다음을 통해 공유


ScrollItemPattern.ScrollIntoView 메서드

정의

컨테이너의 표시 영역(뷰포트) 내에 AutomationElement를 표시하기 위해 컨테이너 개체의 콘텐츠 영역을 스크롤합니다.

public:
 void ScrollIntoView();
public void ScrollIntoView ();
member this.ScrollIntoView : unit -> unit
Public Sub ScrollIntoView ()

예외

항목을 스크롤하여 표시할 수 없는 경우

예제

다음 예제에서는 Select, AddToSelection 또는 RemoveFromSelection 스크롤을 시도 하는 이벤트 처리기를 선언를 SelectionItemPattern 컨테이너 컨트롤의 표시 가능 영역에는 개체.

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

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

    return scrollItemPattern;
}
'''--------------------------------------------------------------------
''' <summary>
''' Obtains a ScrollItemPattern control pattern from an 
''' automation element.
''' </summary>
''' <param name="targetControl">
''' The automation element of interest.
''' </param>
''' <returns>
''' A ScrollItemPattern object.
''' </returns>
'''--------------------------------------------------------------------
Private Function GetScrollItemPattern( _
ByVal targetControl As AutomationElement) As ScrollItemPattern
    Dim scrollItemPattern As ScrollItemPattern = Nothing

    Try
        scrollItemPattern = DirectCast( _
        targetControl.GetCurrentPattern( _
        scrollItemPattern.Pattern), ScrollItemPattern)
    Catch
        ' Object doesn't support the ScrollItemPattern control pattern
        Return Nothing
    End Try

    Return scrollItemPattern

End Function 'GetScrollItemPattern
///--------------------------------------------------------------------
/// <summary>
/// A Select, AddToSelection or RemoveFromSelection event handler that 
/// scrolls a SelectionItem object into the viewable region of its 
/// container control.
/// </summary>
///--------------------------------------------------------------------
private void OnSelectionItemSelect(
    object src, SelectionChangedEventArgs e)
{
    AutomationElement selectionItem = src as AutomationElement;

    ScrollItemPattern scrollItemPattern = GetScrollItemPattern(selectionItem);

    if (scrollItemPattern == null)
    {
        return;
    }

    try
    {
        scrollItemPattern.ScrollIntoView();
    }
    catch (InvalidOperationException)
    {
        // The item cannot be scrolled into view.
        // TO DO: error handling.
    }
}
'''--------------------------------------------------------------------
''' <summary>
''' A Select, AddToSelection or RemoveFromSelection event handler that 
''' scrolls a SelectionItem object into the viewable region of its 
''' container control.
''' </summary>
'''--------------------------------------------------------------------
Private Sub OnSelectionItemSelect( _
ByVal src As Object, ByVal e As SelectionChangedEventArgs)
    Dim selectionItem As AutomationElement = _
    DirectCast(src, AutomationElement)

    Dim scrollItemPattern As ScrollItemPattern = _
    GetScrollItemPattern(selectionItem)

    If scrollItemPattern Is Nothing Then
        Return
    End If

    Try
        scrollItemPattern.ScrollIntoView()
    Catch exc As InvalidOperationException
        ' The item cannot be scrolled into view.
        ' TO DO: error handling.
    End Try

End Sub

설명

이 메서드는 위치를 지정 하는 기능을 제공 하지 않습니다는 AutomationElement 컨테이너의 표시 영역 (뷰포트) 내에서.

적용 대상