TogglePattern.Toggle Method ()

 

Cycles through the toggle states of an AutomationElement.

Namespace:   System.Windows.Automation
Assembly:  UIAutomationClient (in UIAutomationClient.dll)

public void Toggle()

A control will cycle through its ToggleState in this order: On, Off and, if supported, Indeterminate.

In the following example, a TogglePatterncontrol pattern is obtained from an AutomationElement and is subsequently used to toggle the AutomationElement.

///--------------------------------------------------------------------
/// <summary>
/// Obtains a TogglePattern control pattern from an automation element.
/// </summary>
/// <param name="targetControl">
/// The automation element of interest.
/// </param>
/// <returns>
/// A TogglePattern object.
/// </returns>
///--------------------------------------------------------------------
private TogglePattern GetTogglePattern(AutomationElement targetControl)
{
    TogglePattern togglePattern = null;

    try
    {
        togglePattern =
            targetControl.GetCurrentPattern(TogglePattern.Pattern)
            as TogglePattern;
    }
    catch (InvalidOperationException)
    {
        // object doesn't support the TogglePattern control pattern
        return null;
    }

    return togglePattern;
}
///--------------------------------------------------------------------
/// <summary>
/// Calls the TogglePattern.Toggle() method for an associated 
/// automation element.
/// </summary>
/// <param name="togglePattern">
/// The TogglePattern control pattern obtained from
/// an automation element.
/// </param>
///--------------------------------------------------------------------
private void ToggleElement(TogglePattern togglePattern)
{
    try
    {
        togglePattern.Toggle();
    }
    catch (InvalidOperationException)
    {
        // object is not able to perform the requested action
        return;
    }
}

.NET Framework
Available since 3.0
Return to top
Show: