Skip to main content
All docs
V25.1
  • TdxAutomationProperty<T> Class

    The base class for all UIA node property classes.

    Declaration

    TdxAutomationProperty<T> = class(
        TdxAutomationProperty
    )

    Remarks

    TdxAutomationProperty<T> is an abstract generic class for all UIA node property containers.

    Main API Members

    The list below outlines key members of the TdxAutomationProperty<T> class. These members allow you to manage an individual UIA node property.

    Calculated
    Specifies if the UIA node property is calculated.
    Clear
    Resets the UIA node property.
    IsNull
    Identifies if the UIA node property is specified.
    Value
    Specifies the UIA node property value.

    Code Examples

    Indicate Read-Only and Editable States

    The code example in this section changes the description of an unbound single-line text editor (TcxTextEdit) in the UI Automation tree when the editor switches between read-only and editable states.

    uses
      dxUIAClasses,  // Declares all UI Automation classes
      cxEdit,  // Declares base editor classes and auxiliary types
      cxTextEdit;  // Declares the TcxTextEdit class
    // ...
    
    procedure TMyForm.cxTextEdit1PropertiesAutomationCalculateProperty(
      ASender: TObject; AProperty: TdxAutomationProperty;
      AProperties: TdxAutomationProperties);
    var
      AEdit: TcxTextEdit;
    begin
      AEdit := ASender as TcxTextEdit;
      // Check if the UIA node description property is requested
      if AProperty = AProperties.FullDescription then
      begin
        if AEdit.Properties.ReadOnly then
          AProperties.FullDescription.Value := 'Read-Only Mode'
        else
          AProperties.FullDescription.Value := 'Editable';
      end;
    end;
    

    Initialize UIA Node Names for Editors

    The following code example initializes Name and FullDescription UIA node names for an existing single-line text editor (TcxTextEdit):

    uses
      dxUIAClasses,  // Declares all UI Automation classes
      cxEdit,  // Declares base editor classes and auxiliary types
      cxTextEdit;  // Declares the TcxTextEdit class
    // ...
    
    procedure TMyForm.cxTextEdit1PropertiesAutomationCalculateProperty(
      ASender: TObject; AProperties: TdxAutomationProperties);
    begin
      AProperties.Name.Value := 'Task Description';
      AProperties.FullDescription.Value := 'Non-Editable';
    end;
    

    Terminal TdxAutomationProperty Class Descendant

    Do not use the TdxAutomationProperty<T> class directly. Use the TdxStringAutomationProperty class instead.

    Inheritance

    TObject
    TdxAutomationProperty
    TdxAutomationProperty<T>
    See Also