vcl-405534-expresscrossplatformlibrary-common-features-accessibility-support.md
Accessibility interfaces allow DevExpress controls to exchange information with third-party applications, such as accessibility tools.
UI Automation-based accessibility features (such as Microsoft Narrator) rely on the Microsoft UI Automation (UIA) framework to obtain information about UI elements in an application.
All global UI Automation and accessibility-related settings are declared in the dxUIAClasses unit.
In v25.2, accessibility features are initially disabled in all supported controls because this functionality is still in the active development stage. To test the UI Automation functionality in all products listed below, set the dxUIAutomationEnabled global variable to True.
If you encounter any issues while the UI Automation functionality is enabled, please submit a support ticket through the DevExpress Support Center. We will be happy to follow up.
dxUIACalculateAllPropertiesThis global variable specifies if all properties are automatically calculated for a node in the UI Automation tree.TdxUIADefaultSettingsStores default UI Automation-related settings for all supported DevExpress controls.
All DevExpress controls listed in this section can store accessibility-related information (such as public name, description, type) and raise UI Automation events.
Ribbon and toolbar UIs support UI Automation-based accessibility features. You can use the Automation property of individual TdxBarItem descendant instances to add or customize accessibility-related information and handle UI Automation events.
In v25.2, all editors listed in this section implement the Properties.Automation property. You can use this property to add or customize accessibility-related information and handle UI Automation events.
TcxBlobEdit | TcxDBBlobEditA drop-down editor designed to display and edit memo and image data.TcxButtonEdit | TcxDBButtonEditA single-line text editor with one or more embedded buttons.[1]TcxCheckBox | TcxDBCheckBoxA check box.TcxCheckListBox | TcxDBCheckListBoxA list box editor with checkable items.TcxCheckComboBox | TcxDBCheckComboBoxA combo box editor with checkable items.TcxCheckGroup | TcxDBCheckGroupA set of checkboxes designed to specify a single state.[2]TcxComboBox | TcxDBComboBoxA combo box editor.TcxCurrencyEdit | TcxDBCurrencyEditA numeric editor designed to work with monetary values.TcxDateEdit | TcxDBDateEditA date editor with a drop-down calendar.TcxFontNameComboBox | TcxDBFontNameComboBoxA combo box editor designed for font typeface selection.TcxGroupBoxA group box editor.TcxHyperLinkEdit | TcxDBHyperLinkEditA simple editor designed to display a hyperlink.TcxImageComboBox | TcxDBImageComboBoxA combo box editor with support for images.TcxLabel | TcxDBLabelAn uneditable plain text label.TcxListBox | TcxDBListBoxA list box editor.TcxLookupComboBox | TcxDBLookupComboBox | TcxExtLookupComboBox | TcxDBExtLookupComboBoxA lookup combo box editor.[3]TcxMemo | TcxDBMemoA memo editor for plain text content (a multi-line text box).TcxNavigator | TcxDBNavigatorA standalone data navigator editor for controls with IcxNavigator interface support.TcxPopupEdit | TcxDBPopupEditA general-purpose pop-up editor.TcxRadioGroup | TcxDBRadioGroupA group of radio buttons that allow users to select an option.[4]TcxTextEdit | TcxDBTextEditA single-line text editor.TcxTimeEdit | TcxDBTimeEditA time editor with spin buttons.TcxShellComboBox | TcxDBShellComboBoxA shell combo box editor.[3]TcxSpinEdit | TcxDBSpinEditA spin editor.TcxTrackBar | TcxDBTrackBarA track bar editor that specifies a value using a thumb.TdxCheckGroupBox | TdxDBCheckGroupBoxA hybrid editor that combines a group box and a check box.TdxFormattedLabel | TdxDBFormattedLabelAn uneditable label with support for BBCode-inspired markup tags.TdxRangeTrackBar | TdxDBRangeTrackBarA track bar editor with two thumbs designed to specify a range.TdxToggleSwitch | TdxDBToggleSwitchA touch-friendly equivalent of a check box editor.TdxZoomTrackBar | TdxDBZoomTrackBarAn advanced track bar editor with support for two scale ranges.
The Data Grid control, its Table Views, and in turn, columns and rows map to nodes in the UI Automation tree. A UIA client application reads properties of the UIA node that corresponds to the focused UI element.
You can use the TcxGrid.Automation property to configure root UIA node properties for the Data Grid control. In turn, each grid Table View has its own Automation property you can use to configure UIA node information that corresponds to an individual grid Table View and its data rows. At the lowest structure hierarchy level, each column has its own Automation property.
All Tree List controls and their columns and rows map to nodes in the UI Automation tree. A UIA client application reads properties of the UIA node that corresponds to the focused UI element.
You can use the TcxCustomTreeList.Automation property to configure root UIA node properties for any TcxCustomTreeList descendant. In turn, each tree list column has its own Automation property that you can use to configure UIA node information exposed for individual columns.
The Layout control and the hierarchy of all nested groups and items map to nodes in the UI Automation tree if the dxUIAutomationEnabled global variable is set to True. A UIA client reads properties of the UIA node that corresponds to the focused control.
You can use the Automation property to configure root UIA node properties for the Layout control. In turn, each group and item has its own Automation property you can use to configure all nested nodes in the Layout control hierarchy.
The TdxNavBar control supports UI Automation interfaces at the level of individual UI elements and groups. TdxNavBarItem and TdxNavBarGroup classes implement the Automation property, which you can use to add or customize accessibility-related information and handle UI Automation events.
Each control in the list below includes an Automation[5] property. You can use this property to add or customize accessibility-related information and handle UI Automation events.
TdxActivityIndicatorAn activity indicator used to display a looped animation during an ongoing process with an unknown duration.TcxButtonAn enhanced counterpart of the standard TButton component.TcxRadioButtonA standalone radio button.TdxPanelA resizable general-purpose panel with customizable borders.TdxTreeViewControlA Tree View control.
All DevExpress form classes (TdxCustomForm and TdxForm descendants) support UI Automation interfaces.
Tip
We strongly recommend that you derive all forms in your application project from TdxForm and its descendants to ensure the best user experience with third-party assistive tools (UIA clients).
Footnotes
Each embedded editor button has its own Automation property.
Each check group item has its own Automation property.
Drop-down editor windows do not support UI Automation in v25.2.
Each radio group item has its own Automation property.
Use the following links to navigate to corresponding topic descriptions: