
UI Automation Control Pattern Components
Control patterns support the methods, properties, events, and relationships needed to define a discrete piece of functionality available in a control.
The relationship between a UI Automation element and its parent, children and siblings describes the element's structure within the UI Automation tree.
The methods allow UI Automation clients to manipulate the control.
The properties and events provide information about the control pattern's functionality as well as information about the state of the control.
Control patterns relate to UI as interfaces relate to Component Object Model (COM) objects. In COM, you can query an object to ask what interfaces it supports and then use those interfaces to access functionality. In UI Automation, UI Automation clients can ask a control which control patterns it supports and then interact with the control through the properties, methods, events, and structures exposed by the supported control patterns. For example, for a multiline edit box, UI Automation providers implement IScrollProvider. When a client knows that an AutomationElement supports the ScrollPattern control pattern, it can use the properties, methods, and events exposed by that control pattern to manipulate the control, or access information about the control.