Skip to main content
All docs
V25.1
  • TdxAutomationProperties Class

    Stores UIA node properties associated with a DevExpress control/UI element.

    Declaration

    TdxAutomationProperties = class(
        TObject
    )

    Remarks

    UIA properties define a node in the UI Automation tree. Third-party accessibility applications address these properties to obtain information on the corresponding control/UI element.

    Main API Members

    The list below outlines key members of the TdxAutomationProperties class. These members allow you to access and configure individual properties of a UI Automation tree node.

    FullDescription
    Stores a full description for a UIA node.
    Name
    Stores a UIA node name.

    Code Examples

    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;
    

    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;
    

    Direct TdxAutomationProperties Class References

    The following procedural types reference a TdxAutomationProperties object as the AProperties parameter:

    TdxCalculateAutomationPropertyEvent
    The procedural type for UIA node property calculation events.
    TdxInitializeAutomationPropertiesEvent
    The procedural type for UIA node property initialization events.

    Inheritance

    TObject
    TdxAutomationProperties
    See Also