FrameworkElement.BringIntoView FrameworkElement.BringIntoView FrameworkElement.BringIntoView FrameworkElement.BringIntoView Method

Определение

Пытается отобразить данный элемент вместе с содержащимися в нем прокручиваемыми областями.Attempts to bring this element into view, within any scrollable regions it is contained within.

Перегрузки

BringIntoView(Rect) BringIntoView(Rect) BringIntoView(Rect) BringIntoView(Rect)

Пытается отобразить указанный размер области данного элемента вместе с содержащимися в нем прокручиваемыми областями.Attempts to bring the provided region size of this element into view, within any scrollable regions it is contained within.

BringIntoView() BringIntoView() BringIntoView() BringIntoView()

Пытается отобразить данный элемент вместе с содержащимися в нем прокручиваемыми областями.Attempts to bring this element into view, within any scrollable regions it is contained within.

BringIntoView(Rect) BringIntoView(Rect) BringIntoView(Rect) BringIntoView(Rect)

Пытается отобразить указанный размер области данного элемента вместе с содержащимися в нем прокручиваемыми областями.Attempts to bring the provided region size of this element into view, within any scrollable regions it is contained within.

public:
 void BringIntoView(System::Windows::Rect targetRectangle);
public void BringIntoView (System.Windows.Rect targetRectangle);
member this.BringIntoView : System.Windows.Rect -> unit
Public Sub BringIntoView (targetRectangle As Rect)

Параметры

targetRectangle
Rect Rect Rect Rect

Указанный размер элемента, который также следует отобразить.Specified size of the element that should also be brought into view.

Примеры

В следующем примере большая графика находится в ограниченной области прокрутки.The following example has a large graphic in a constrained scrolling region. Кнопка на странице содержит обработчик, который Прокручивает представление до определенной области крупного графика.A button on the page has a handler that scrolls the view to a particular region of the large graphic.

<ScrollViewer Width="300" Height="300" HorizontalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Visible">
  <Image Name="mapframe" ScrollViewer.CanContentScroll="True"  >
    <Image.Source>
      <BitmapImage UriSource="treasuremap.bmp"/>
    </Image.Source>
  </Image>
</ScrollViewer>
<StackPanel>
  <Button Click="GoToLake">Go to Lake</Button>

</StackPanel>
void GoToLake(object sender, RoutedEventArgs e)
{
    mapframe.BringIntoView(new Rect(800, 400, 200, 200));
}
Private Sub GoToLake(ByVal sender As Object, ByVal e As RoutedEventArgs)
	mapframe.BringIntoView(New Rect(800, 400, 200, 200))
End Sub

Комментарии

Вызывая этот метод, вы создаете RequestBringIntoView событие, которое происходит из текущего элемента.By calling this method, you raise a RequestBringIntoView event that originates from the current element. Это событие вызывается ScrollViewer, чтобы его можно было обработать с помощью, или производного или аналогичного класса.This event is raised so that it can be handled by a ScrollViewer, or a derived or similar class. Ожидаемое поведение заключается в том, что событие обрабатывается родительским элементом, помеченным как обработанный в данных события, а источник события передается в представление через логику, внедренную в ScrollViewer элемент управления.The expected behavior is that the event is handled by the parent element, marked handled in the event data, and the source of the event is brought into view through the logic embedded in the ScrollViewer control. Ни событие, BringIntoView ни метод не передают никакой информации об успехе или неудаче, Кроме того, что событие обычно отмечается как обработанное при успешном выполнении. RequestBringIntoViewNeither the RequestBringIntoView event nor the BringIntoView method transmit any information about success or failure, other than that the event is typically marked handled on success. Причины сбоя могут включать параметры элемента, например Visibility , значение, отличное от. VisibleReasons for failure can include the element settings, such as Visibility being some value other than Visible.

При использовании сигнатуры, не указывающей targetRectangle, весь элемент (его RenderSize) становится видимым.If you use the signature that does not specify a targetRectangle, then the entire element size (its RenderSize) will be made visible.

Вызывая этот метод, вы, вероятно, MakeVisible вызовем для любой родительской прокручиваемой области, содержащей элемент.By calling this method, you potentially will call MakeVisible on any parent scrollable area that contains the element. Если этот элемент не содержится в прокручиваемой области, RequestBringIntoView событие по-прежнему вызывается, но не будет действовать, поскольку прослушиватели событий отсутствуют.If this element is not contained in a scrollable area, the RequestBringIntoView event is still raised, but there will be no effect because there are no event listeners.

Дополнительно

BringIntoView() BringIntoView() BringIntoView() BringIntoView()

Пытается отобразить данный элемент вместе с содержащимися в нем прокручиваемыми областями.Attempts to bring this element into view, within any scrollable regions it is contained within.

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

Примеры

В следующем примере реализуется обработчик для события навигации приложения, отвечающего за то, универсальный идентификатор ресурса (URI)uniform resource identifier (URI) что при переходе к включается фрагмент.The following example implements a handler for an application navigation event that responds whenever the универсальный идентификатор ресурса (URI)uniform resource identifier (URI) being navigated to includes a fragment. Фрагменту присваивается имя в URIURI следующем хэш-знаке (#), и реализованное поведение заставляет элемент прокручиваться в пределах фрейма.The fragment is named in the URIURI following the hash sign (#), and the implemented behavior causes the element to scroll into view within the frame. BringIntoViewи RequestBringIntoView запрашивают поведение прокрутки в примере.BringIntoView and RequestBringIntoView request that scrolling behavior in the example.

void browserFrame_FragmentNavigation(object sender, FragmentNavigationEventArgs e)
{
    object content = ((ContentControl)e.Navigator).Content;
    FrameworkElement fragmentElement = LogicalTreeHelper.FindLogicalNode((DependencyObject)content, e.Fragment) as FrameworkElement;
    if (fragmentElement == null)
    {
        // Redirect to error page
        // Note - You can't navigate from within a FragmentNavigation event handler,
        //        hence creation of an async dispatcher work item
        this.Dispatcher.BeginInvoke(
            DispatcherPriority.Send,
            (DispatcherOperationCallback) delegate(object unused) 
            {
                this.browserFrame.Navigate(new Uri("FragmentNotFoundPage.xaml", UriKind.Relative));
                return null;
            },
            null);
        e.Handled = true;
    }
}
Private Sub browserFrame_FragmentNavigation(ByVal sender As Object, ByVal e As FragmentNavigationEventArgs)
    Dim element As FrameworkElement = TryCast(LogicalTreeHelper.FindLogicalNode(DirectCast(DirectCast(e.Navigator, ContentControl).Content, DependencyObject), e.Fragment), FrameworkElement)
    If (element Is Nothing) Then
        ' Redirect to error page
        ' Note - You can't navigate from within a FragmentNavigation event handler,
        '        hence creation of an async dispatcher work item
        Dim callback As New DispatcherOperationCallback(AddressOf Me.FragmentNotFoundNavigationRedirect)
        Me.Dispatcher.BeginInvoke(DispatcherPriority.Normal, callback, Nothing)
    End If
    e.Handled = True
End Sub

Function FragmentNotFoundNavigationRedirect(ByVal unused As Object) As Object
    Me.browserFrame.Navigate(New Uri("FragmentNotFoundPage.xaml", UriKind.Relative))
    Return Nothing
End Function

Комментарии

Вызывая этот метод, вы создаете RequestBringIntoView событие, которое происходит из текущего элемента.By calling this method, you raise a RequestBringIntoView event that originates from the current element. Это событие вызывается ScrollViewer, чтобы его можно было обработать с помощью, или производного или аналогичного класса.This event is raised so that it can be handled by a ScrollViewer, or a derived or similar class. Ожидаемое поведение заключается в том, что событие обрабатывается родительским элементом, помеченным как обработанный в данных события, а источник события передается в представление через логику, внедренную в ScrollViewer элемент управления.The expected behavior is that the event is handled by the parent element, marked handled in the event data, and the source of the event is brought into view through the logic embedded in the ScrollViewer control. Ни событие, BringIntoView ни метод не передают никакой информации об успехе или неудаче, Кроме того, что событие обычно отмечается как обработанное при успешном выполнении. RequestBringIntoViewNeither the RequestBringIntoView event nor the BringIntoView method transmit any information about success or failure, other than that the event is typically marked handled on success. Причины сбоя могут включать параметры элемента, например Visibility , значение, отличное от. VisibleReasons for failure can include the element settings, such as Visibility being some value other than Visible.

При использовании сигнатуры, не указывающей targetRectangle, весь элемент (его RenderSize) становится видимым.If you use the signature that does not specify a targetRectangle, then the entire element size (its RenderSize) will be made visible.

Вызывая этот метод, вы, вероятно, MakeVisible вызовем для любой родительской прокручиваемой области, содержащей элемент.By calling this method, you potentially will call MakeVisible on any parent scrollable area that contains the element. Если этот элемент не содержится в прокручиваемой области, RequestBringIntoView событие по-прежнему вызывается, но не будет действовать, поскольку прослушиватели событий отсутствуют.If this element is not contained in a scrollable area, the RequestBringIntoView event is still raised, but there will be no effect because there are no event listeners.

Дополнительно

Применяется к