다음을 통해 공유


UI 자동화를 사용하여 확인란의 전환 상태 가져오기

참고참고

이 문서는 System.Windows.Automation 네임스페이스에 정의된 관리되는 UI Automation 클래스를 사용하려는 .NET Framework 개발자를 위해 작성되었습니다.UI Automation에 대한 최신 정보는 Windows Automation API: UI Automation을 참조하십시오.

이 항목에서는 Microsoft UI Automation를 사용하여 컨트롤의 전환 상태를 가져오는 방법을 보여 줍니다.

예제

이 예제에서는 AutomationElement 클래스의 GetCurrentPattern 메서드를 사용하여 컨트롤의 TogglePattern 개체를 가져오고 해당 ToggleState 속성을 반환합니다.

        ''' <summary>
        ''' Gets the toggle state of an element in the target application.
        ''' </summary>
        ''' <param name="element">The target element.</param>
        Private Function IsElementToggledOn(ByVal element As AutomationElement) As Boolean
            If element Is Nothing Then
                ' TODO: Invalid parameter error handling.
                Return False
            End If

            Dim objPattern As Object = Nothing
            Dim togPattern As TogglePattern
            If True = element.TryGetCurrentPattern(TogglePattern.Pattern, objPattern) Then
                togPattern = TryCast(objPattern, TogglePattern)
                Return togPattern.Current.ToggleState = ToggleState.On
            End If
            ' TODO: Object doesn't support TogglePattern error handling.
            Return False
        End Function
/// <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;
}