Ottenere lo stato di attivazione/disattivazione di una casella di controllo utilizzando l'automazione interfaccia utente

Aggiornamento: novembre 2007

In questo argomento viene illustrato come utilizzare l'automazione interfaccia utente Microsoft per ottenere la stato di attivazione/disattivazione di un controllo.

Esempio

In questo esempio utilizzato il metodo GetCurrentPattern della classe AutomationElement per ottenere un oggetto TogglePattern da un controllo e restituire la relativa proprietà ToggleState.

/// <summary>
/// Gets the toggle state of an element in the target application.
/// </summary>
/// <param name="element">The target element.</param>
private bool IsElementToggledOn(AutomationElement element)
{
    if (element == null)
    {
        // TODO: Invalid parameter error handling.
        return false;
    }

    Object objPattern;
    TogglePattern togPattern;
    if (true == element.TryGetCurrentPattern(TogglePattern.Pattern, out objPattern))
    {
        togPattern = objPattern as TogglePattern;
        return togPattern.Current.ToggleState == ToggleState.On;
    }
    // TODO: Object doesn't support TogglePattern error handling.
    return false;
}