UI Automation Support for the RadioButton Control Type

System_CAPS_ICON_note.jpg Note

This documentation is intended for .NET Framework developers who want to use the managed UI Automation classes defined in the System.Windows.Automation namespace. For the latest information about UI Automation, see Windows Automation API: UI Automation.

This topic provides information about UI Automation support for the RadioButton control type. In UI Automation, a control type is a set of conditions that a control must meet in order to use the ControlTypeProperty property. The conditions include specific guidelines for UI Automation tree structure, UI Automation property values and control patterns.

A radio button consists of a round button and application-defined text (a label), an icon, or a bitmap that indicates a choice the user can make by selecting the button. An application typically uses radio buttons in a group box to permit the user to choose from a set of related, but mutually exclusive options. For example, the application might present a group of radio buttons from which the user can select a format preference for text selected in the client area. The user could select a left-aligned, right-aligned, or centered format by selecting the corresponding radio button. Typically, the user can select only one option at a time from a set of radio buttons.

The following sections define the required UI Automation tree structure, properties, control patterns, and events for the RadioButton control type. The UI Automation requirements apply to all list controls, whether Windows Presentation Foundation (WPF), Win32, or Windows Forms.

The following table depicts the control view and the content view of the UI Automation tree that pertains to radio button controls and describes what can be contained in each view. For more information on the UI Automation tree, see UI Automation Tree Overview.

Control ViewContent View

There are no children in the control view or the content view.

The following table lists the UI Automation properties whose value or definition is especially relevant to the RadioButton control type. For more information on UI Automation properties, see UI Automation Properties for Clients.

UI Automation PropertyValueNotes
AutomationIdPropertySee notes.The value of this property needs to be unique across all controls in an application.
BoundingRectanglePropertySee notes.The outermost rectangle that contains the whole control.
IsKeyboardFocusablePropertySee notes.If the control can receive keyboard focus, it must support this property.
NamePropertySee notes.The radio button control’s name is the text that is displayed beside the button that maintains selection state.
ClickablePointPropertySee notes.The radio button control’s clickable point MUST be a point that sets selection on the radio button if clicked with a mouse pointer.
LabeledByPropertyNullRadio buttons are self-labeling controls.
ControlTypePropertyRadioButtonThis value is the same for all UI frameworks.
LocalizedControlTypeProperty"radio button"Localized string corresponding to the RadioButton Control Type.
IsContentElementPropertyTrueThe radio button control is always included in the content view of the UI Automation tree.
IsControlElementPropertyTrueThe radio button control is always included in the control view of the UI Automation tree.

The following table lists the UI Automation control patterns required to be supported by all radio button controls. For more information on control patterns, see UI Automation Control Patterns Overview.

Control Pattern/Control Pattern PropertySupport/ValueNotes
ISelectionItemProviderYesAll radio button controls must support the Selection Item pattern to enable themselves to be selected.
SelectionContainerSee notes.The SelectionContainerProperty must always be completed so that a UI Automation client can determine what other radio buttons within a specific context relate to one another. For the Win32 version of the radio button, this property will not be supported because it is not possible to obtain this information from that legacy framework.
IToggleProviderNeverThe radio button cannot cycle through its state once it has been set. This pattern must never be supported on radio button.

The following table lists the UI Automation events required to be supported by all radio button controls. For more information on events, see UI Automation Events Overview.

UI Automation EventSupportNotes
ToggleStateProperty property-changed event.NeverNone
BoundingRectangleProperty property-changed event.RequiredNone
IsOffscreenProperty property-changed event.RequiredNone
IsEnabledProperty property-changed event.RequiredNone

UI Automation Control Types Overview
UI Automation Overview