NavigationService.Navigating Olay

Tanım

Yeni bir gezinti istendiğinde gerçekleşir.

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 

Olay Türü

Örnekler

Aşağıdaki örnekte statik içeriği yenileme isteğinin yapılıp yapılmadığını algılama ve varsa isteği iptal etme işlemlerinin nasıl gerçekleştirildiği Navigating gösterilmektedir.

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

Açıklamalar

Navigating , yeni bir gezinti istendiğinde, ancak kaynak içerik istenmeden önce, aşağıdakiler de dahil olmak üzere oluşturulur:

  • Navigate çağrıldığında.

  • GoBack veya GoForward çağrılır (veya gezinti kullanıcı arabiriminden bir giriş seçilir).

  • İçerik parçasına gidilir.

Gezinti başlamadan önce gezinti isteğiyle ilgili ilgili bilgileri bulmanız gerekiyorsa bunu siz halledersiniz Navigating . Bu bilgiler, olay işleyicisine NavigatingCancelEventArgsNavigating geçirilen nesneden kullanılabilir.

Gezinti için bir WebRequest nesne oluşturulur ve parametresinden NavigatingCancelEventArgs kullanılabilir; gerçek istek bu noktada yapılmadığından, gerekirse nesneyi yeniden yapılandırabilirsiniz WebRequest .

Gerekirse true olarak ayarlayarak Cancel gezintiyi iptal etme işlemini de gerçekleştirebilirsinizNavigatingCancelEventArgs. Gezintiyi iptal ederseniz, başka gezinti olayı tetiklenir.

Not

Uygulamanız tarayıcıda barındırılıyorsa, olayı iptal ederek kullanıcının uygulamanızdan uzaklaşmasını Navigating önleyemezsiniz.

İlk içerik parçasına bir gezgin (NavigationWindow, ) tarafından gidildikten sonra, Framegezinti geçmişine gidilen her içerik parçası eklenir. Uzaklarda gezindiğiniz içerikle ilgili durum bilgilerini kaydetmeniz gerekiyorsa, bir CustomContentState nesnesiyle ayarlayarak ContentStateToSave bu içeriğin günlük girdisine durumu ekleyebilirsiniz.

Not

yükselttiğinde NavigationServiceNavigating, nesnesi üzerinde Application de olay oluştururApplication.Navigating.

Şunlara uygulanır

Ayrıca bkz.