Page.NavigationService Свойство

Определение

Получает службу навигации, используемую узлом страницы для управления навигацией.

public:
 property System::Windows::Navigation::NavigationService ^ NavigationService { System::Windows::Navigation::NavigationService ^ get(); };
public System.Windows.Navigation.NavigationService NavigationService { get; }
member this.NavigationService : System.Windows.Navigation.NavigationService
Public ReadOnly Property NavigationService As NavigationService

Значение свойства

Объект NavigationService , который используется для управления навигацией, или null если узел не поддерживает навигацию.

Примеры

В следующем примере показано, как страница может проверить, доступна ли служба навигации и, если да, используйте ее для перехода обратно на предыдущую страницу.

public partial class HomePage : Page
{
    public HomePage()
    {
        InitializeComponent();

        // Don't allow back navigation if no navigation service
        if (this.NavigationService == null)
        {
            this.goBackButton.IsEnabled = false;
        }
    }

    void goBackButton_Click(object sender, RoutedEventArgs e)
    {
        // Go to previous entry in journal back stack
        if (this.NavigationService.CanGoBack)
        {
            this.NavigationService.GoBack();
        }
    }
}
Partial Public Class HomePage
    Inherits Page
    Public Sub New()
        InitializeComponent()

        ' Don't allow back navigation if no navigation service
        If Me.NavigationService Is Nothing Then
            Me.goBackButton.IsEnabled = False
        End If
    End Sub

    Private Sub goBackButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Go to previous entry in journal back stack
        If Me.NavigationService.CanGoBack Then
            Me.NavigationService.GoBack()
        End If
    End Sub
End Class

Комментарии

Страницы могут размещаться несколькими типами узлов, включая Window, NavigationWindowFrameи браузер.

Страницы часто должны интегрироваться с навигацией узла, чтобы обеспечить поддержку навигации на странице. Однако, поскольку страница может не знать, какой узел будет находиться во время выполнения, он не может интегрироваться непосредственно с элементами навигации узла, чтобы сделать это.

Вместо этого она может попытаться использовать службу навигации, которая является службой, которая поддерживает навигацию в стиле браузера и инкапсулируется классом NavigationService . Однако вы не можете создать собственный NavigationService экземпляр. Вместо этого типы узлов, такие как NavigationWindow, Frameили браузер, создают собственный NavigationService экземпляр, к которому можно получить доступ из NavigationService свойства.

Служба навигации, возвращаемая из NavigationService свойства, является экземпляром NavigationService класса, управляемого первым навигатором вверх по визуальному дереву. Если он не найден, возвращается, null указывая, что узел страницы не поддерживает навигацию.

Замечание

Класс Window не поддерживает навигацию и не предоставляет службу навигации.

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