NavigationService.Navigating Kejadian
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Terjadi ketika navigasi baru diminta.
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
Jenis Acara
Contoh
Contoh berikut menunjukkan cara menangani Navigating untuk mendeteksi apakah permintaan untuk me-refresh konten statis telah dibuat dan, jika demikian, untuk membatalkan permintaan.
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
Keterangan
Navigating dinaikkan saat navigasi baru diminta, tetapi sebelum konten sumber diminta, termasuk ketika:
Navigate dipanggil.
GoBack atau GoForward dipanggil (atau entri dipilih dari antarmuka pengguna navigasi).
Fragmen konten dinavigasi.
Anda menangani Navigating jika Anda perlu menemukan informasi yang bersangkutan mengenai permintaan navigasi sebelum navigasi dimulai. Informasi ini tersedia dari NavigatingCancelEventArgs objek yang diteruskan ke penanganan Navigating aktivitas.
Objek WebRequest untuk navigasi dibuat dan tersedia dari NavigatingCancelEventArgs parameter; karena permintaan aktual belum dibuat pada saat ini, Anda dapat mengonfigurasi WebRequest ulang objek, jika perlu.
Anda juga menangani NavigatingCancelEventArgs untuk membatalkan navigasi, jika diperlukan, dengan mengatur Cancel ke true. Jika Anda membatalkan navigasi, tidak ada peristiwa navigasi lain yang dinaikkan.
Catatan
Jika aplikasi Anda dihosting di browser, Anda tidak dapat mencegah pengguna menavigasi jauh dari aplikasi Anda dengan membatalkan Navigating peristiwa.
Setelah bagian pertama konten dinavigasi oleh navigator (NavigationWindow, Frame), setiap bagian konten yang dinavigasi jauhnya ditambahkan ke riwayat navigasi. Jika Anda perlu menyimpan informasi status tentang konten tempat Anda menavigasi jauh, Anda dapat menambahkan status ke entri jurnal untuk konten tersebut dengan mengatur ContentStateToSave dengan CustomContentState objek .
Catatan
Ketika NavigationService menaikkan Navigating, itu juga menaikkan Application.Navigating peristiwa pada Application objek .