다음을 통해 공유


WindowPattern.WaitForInputIdle(Int32) 메서드

정의

지정된 시간 동안 또는 연결된 프로세스가 유휴 상태가 될 때까지 중 먼저 완료되는 시간 동안 코드 호출을 차단합니다.

public:
 bool WaitForInputIdle(int milliseconds);
public bool WaitForInputIdle (int milliseconds);
member this.WaitForInputIdle : int -> bool
Public Function WaitForInputIdle (milliseconds As Integer) As Boolean

매개 변수

milliseconds
Int32

연결된 프로세스가 유휴 상태가 될 때까지 대기하는 시간(밀리초)입니다. 최대값은 Int32.MaxValue입니다.

반환

창이 유휴 상태가 되면 true이고, 시간 초과가 발생하면 false입니다.

예외

전달된 매개 변수가 유효한 숫자가 아닙니다.

예제

다음 예제에서는 WindowPattern 컨트롤 패턴에서 가져온를 AutomationElement 사용 하 여 WaitForInputIdle 요소는 합당 한 시간 내에서 사용자 상호 작용에 대 한 준비를 확인 하려면.

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

    try
    {
        windowPattern =
            targetControl.GetCurrentPattern(WindowPattern.Pattern)
            as WindowPattern;
    }
    catch (InvalidOperationException)
    {
        // object doesn't support the WindowPattern control pattern
        return null;
    }
    // Make sure the element is usable.
    if (false == windowPattern.WaitForInputIdle(10000))
    {
        // Object not responding in a timely manner
        return null;
    }
    return windowPattern;
}
'''------------------------------------------------------------------------
''' <summary>
''' Obtains a WindowPattern control pattern from an automation element.
''' </summary>
''' <param name="targetControl">
''' The automation element of interest.
''' </param>
''' <returns>
''' A WindowPattern object.
''' </returns>
'''------------------------------------------------------------------------
Private Function GetWindowPattern(ByVal targetControl As AutomationElement) As WindowPattern
    Dim windowPattern As WindowPattern = Nothing

    Try
        windowPattern = DirectCast( _
        targetControl.GetCurrentPattern(windowPattern.Pattern), _
        WindowPattern)
    Catch
        ' object doesn't support the WindowPattern control pattern
        Return Nothing
    End Try
    ' Make sure the element is usable.
    If False = windowPattern.WaitForInputIdle(10000) Then
        ' Object not responding in a timely manner
        Return Nothing
    End If
    Return windowPattern
End Function 'GetWindowPattern

설명

이 메서드는 일반적으로의 처리와 함께 사용 된 WindowOpenedEvent합니다.

구현은 기본 애플리케이션 프레임 워크;에 종속 따라서이 메서드는 창의 사용자 입력에 대 한 준비 된 후 잠시를 반환할 수 있습니다. 이 메서드는 창이 유휴 상태가 된 시점을 정확히 확인할를 호출 하는 코드 안 합니다.

적용 대상