NavigationService.Navigating Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит при запросе новой навигации.
public:
event System::Windows::Navigation::NavigatingCancelEventHandler ^ Navigating;
public event System.Windows.Navigation.NavigatingCancelEventHandler Navigating;
member this.Navigating : System.Windows.Navigation.NavigatingCancelEventHandler
Public Custom Event Navigating As NavigatingCancelEventHandler
Тип события
Примеры
В следующем примере показано, как определить Navigating , был ли выполнен запрос на обновление статического содержимого и, если да, отменить запрос.
void NavigationService_Navigating(object sender, NavigatingCancelEventArgs e)
{
// Don't allow refreshing of a static page
if ((e.NavigationMode == NavigationMode.Refresh) &&
(e.Uri.OriginalString == "StaticPage.xaml"))
{
e.Cancel = true;
}
}
Private Sub NavigationService_Navigating(ByVal sender As Object, ByVal e As NavigatingCancelEventArgs)
' Don't allow refreshing of a static page
If (e.NavigationMode = NavigationMode.Refresh) AndAlso (e.Uri.OriginalString = "StaticPage.xaml") Then
e.Cancel = True
End If
End Sub
Комментарии
Navigating вызывается при запросе новой навигации, но перед запросом исходного содержимого, включая:
Navigate вызывается.
GoBack или GoForward вызывается (или запись выбирается в пользовательском интерфейсе навигации).
Перейдите к фрагменту содержимого.
Navigating Перед началом навигации необходимо обнаружить соответствующие сведения о запросе навигации. Эти сведения доступны из NavigatingCancelEventArgs объекта, передаваемого обработчику Navigating событий.
Объект WebRequest для навигации создается и доступен из NavigatingCancelEventArgs параметра, так как фактический запрос не был выполнен в данный момент, при необходимости можно перенастроить WebRequest объект.
При необходимости вы также обрабатываете NavigatingCancelEventArgs отмену навигации, задав Cancel значение true. При отмене навигации другие события навигации не вызываются.
Note
Если приложение размещено в браузере, вы не можете запретить пользователю переходить от приложения, отменив Navigating событие.
После перехода первого фрагмента содержимого навигатором (NavigationWindow, Frameкаждый фрагмент содержимого, который перемещается от него, добавляется в журнал навигации). Если вам нужно сохранить сведения о состоянии содержимого, которое вы перемещаете, можно добавить состояние в запись журнала для этого содержимого, задав для ContentStateToSaveCustomContentState него объект.
Note
При NavigationService возникновении Navigatingон также вызывает Application.Navigating событие объекта Application .