SelectionItem Control Pattern

Describes guidelines and conventions for implementing ISelectionItemProvider, including information about properties, methods, and events. The SelectionItem control pattern is used to support controls that act as individual, selectable child items of container controls that implement ISelectionProvider.

For examples of controls that implement this control pattern, see Control Types and Their Supported Control Patterns.

This topic contains the following sections.

Implementation Guidelines and Conventions

When implementing the SelectionItem control pattern, note the following guidelines and conventions:

Required Members for ISelectionItemProvider

The following properties, methods, and events are required for implementing the ISelectionItemProvider interface.

Required membersMember typeNotes
AddToSelection MethodNone
IsSelected PropertyNone
RemoveFromSelection MethodNone
Select MethodNone
SelectionContainer PropertyNone


If the result of a Select, an AddToSelection, or a RemoveFromSelection is a single selected item, an ElementSelected event (UIA_SelectionItem_ElementSelectedEventId) should be raised; otherwise raise ElementAddedToSelection (UIA_SelectionItem_ElementAddedToSelectionEventId) or ElementRemovedFromSelection (UIA_SelectionItem_ElementRemovedFromSelectionEventId) events as appropriate.

Related topics

Control Types and Their Supported Control Patterns
UI Automation Control Patterns Overview
UI Automation Tree Overview