ScrollItemPattern.ScrollIntoView Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Прокручивает область содержимого контейнерного объекта, чтобы отобразить элемент AutomationElement в видимой области (окне просмотра) контейнера.
public:
void ScrollIntoView();
public void ScrollIntoView ();
member this.ScrollIntoView : unit -> unit
Public Sub ScrollIntoView ()
Исключения
Элемент нельзя прокрутить до области просмотра.
Примеры
В следующем примере Selectобъявлен обработчик событий или RemoveFromSelection , AddToSelection который пытается прокрутить объект в просматриваемую 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 видимой области (окне просмотра) контейнера.