Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

TogglePattern.TogglePatternInformation.ToggleState Property

Definition

Namespace:
System.Windows.Automation
Assembly:
UIAutomationClient.dll

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Retrieves the toggle state of the AutomationElement.

public:
 property System::Windows::Automation::ToggleState ToggleState { System::Windows::Automation::ToggleState get(); };
public System.Windows.Automation.ToggleState ToggleState { get; }
member this.ToggleState : System.Windows.Automation.ToggleState
Public ReadOnly Property ToggleState As ToggleState

Property Value

The ToggleState of the AutomationElement. The default value is Indeterminate.

Examples

In the following example, a root element is passed to a function that returns a collection of automation elements that are descendants of the root and satisfy a set of property conditions.

///--------------------------------------------------------------------
/// <summary>
/// Finds all automation elements that satisfy 
/// the specified condition(s).
/// </summary>
/// <param name="rootElement">
/// The automation element from which to start searching.
/// </param>
/// <returns>
/// A collection of automation elements satisfying 
/// the specified condition(s).
/// </returns>
///--------------------------------------------------------------------
private AutomationElementCollection FindAutomationElement(
 AutomationElement rootElement)
{
 if (rootElement == null)
 {
 throw new ArgumentException("Root element cannot be null.");
 }

 PropertyCondition conditionOn =
 new PropertyCondition(
 TogglePattern.ToggleStateProperty, ToggleState.On);

 PropertyCondition conditionIndeterminate =
 new PropertyCondition(
 TogglePattern.ToggleStateProperty, ToggleState.Indeterminate);

 // Use any combination of the preceding condtions to 
 // find the control(s) of interest
 OrCondition condition = new OrCondition(
 conditionOn,
 conditionIndeterminate);

 return rootElement.FindAll(TreeScope.Descendants, condition);
}
'''--------------------------------------------------------------------
''' <summary>
''' Finds all automation elements that satisfy 
''' the specified condition(s).
''' </summary>
''' <param name="rootElement">
''' The automation element from which to start searching.
''' </param>
''' <returns>
''' A collection of automation elements satisfying 
''' the specified condition(s).
''' </returns>
'''--------------------------------------------------------------------
Private Function FindAutomationElement( _
ByVal rootElement As AutomationElement) As AutomationElementCollection
 If rootElement Is Nothing Then
 Throw New ArgumentException("Root element cannot be null.")
 End If

 Dim conditionOn As New PropertyCondition( _
 TogglePattern.ToggleStateProperty, ToggleState.On)

 Dim conditionIndeterminate As New PropertyCondition( _
 TogglePattern.ToggleStateProperty, ToggleState.Indeterminate)

 ' Use any combination of the preceding condtions to 
 ' find the control(s) of interest
 Dim condition As OrCondition = _
 New OrCondition(conditionOn, conditionIndeterminate)

 Return rootElement.FindAll(TreeScope.Descendants, condition)

End Function 'FindAutomationElement

Remarks

An AutomationElement must cycle through its ToggleState in this order: On, Off and, if supported, Indeterminate.

Applies to


Feedback

Was this page helpful?