NavigationService.Navigate Metode
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.
Navigasikan secara asinkron ke konten sumber yang ditentukan.
Overload
Navigate(Uri, Object, Boolean) |
Navigasikan secara asinkron ke konten sumber yang terletak di URI, teruskan objek yang berisi status navigasi untuk diproses selama navigasi, dan kotak pasir konten. |
Navigate(Uri, Object) |
Navigasikan secara asinkron ke konten sumber yang terletak di URI, dan teruskan objek yang berisi data yang akan digunakan untuk diproses selama navigasi. |
Navigate(Uri) |
Navigasikan secara asinkron ke konten yang ditentukan oleh URI. |
Navigate(Object) |
Navigasikan secara asinkron ke konten yang dimuat oleh objek. |
Navigate(Object, Object) |
Navigasikan secara asinkron ke konten yang dimuat oleh objek, dan teruskan objek yang berisi data yang akan digunakan untuk diproses selama navigasi. |
Navigate(Uri, Object, Boolean)
Navigasikan secara asinkron ke konten sumber yang terletak di URI, teruskan objek yang berisi status navigasi untuk diproses selama navigasi, dan kotak pasir konten.
public:
bool Navigate(Uri ^ source, System::Object ^ navigationState, bool sandboxExternalContent);
public bool Navigate (Uri source, object navigationState, bool sandboxExternalContent);
member this.Navigate : Uri * obj * bool -> bool
Public Function Navigate (source As Uri, navigationState As Object, sandboxExternalContent As Boolean) As Boolean
Parameter
- navigationState
- Object
Objek yang berisi data yang akan digunakan untuk diproses selama navigasi.
- sandboxExternalContent
- Boolean
Unduh konten ke dalam kotak pasir keamanan kepercayaan parsial (dengan sekumpulan izin zona Internet default, jika true
. Default adalah false
.
Mengembalikan
true
jika navigasi tidak dibatalkan; jika tidak, false
.
Keterangan
Metode ini hanya untuk aplikasi mandiri dan konten Extensible Application Markup Language (XAML).
Metode ini menunjukkan perilaku yang sama dengan NavigationService.Navigate, dan memperluasnya dengan memastikan bahwa konten yang sedang diunduh ditempatkan ke dalam kotak pasir keamanan kepercayaan parsial (dengan sekumpulan izin zona Internet default - lihat Keamanan Kepercayaan Parsial WPF).
Lihat juga
Berlaku untuk
Navigate(Uri, Object)
Navigasikan secara asinkron ke konten sumber yang terletak di URI, dan teruskan objek yang berisi data yang akan digunakan untuk diproses selama navigasi.
public:
bool Navigate(Uri ^ source, System::Object ^ navigationState);
public bool Navigate (Uri source, object navigationState);
member this.Navigate : Uri * obj -> bool
Public Function Navigate (source As Uri, navigationState As Object) As Boolean
Parameter
- navigationState
- Object
Objek yang berisi data yang akan digunakan untuk diproses selama navigasi.
Mengembalikan
true
jika navigasi tidak dibatalkan; jika tidak, false
.
Contoh
Contoh berikut menunjukkan menavigasi ke URI dan melewati status navigasi.
void goButton_Click(object sender, RoutedEventArgs e)
{
this.NavigationService.Navigate(new Uri(this.addressTextBox.Text), DateTime.Now);
}
void NavigationService_LoadCompleted(object sender, NavigationEventArgs e)
{
DateTime requestDateTime = (DateTime)e.ExtraData;
string msg = string.Format("Request started {0}\nRequest completed {1}", requestDateTime, DateTime.Now);
MessageBox.Show(msg);
}
Private Sub goButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
Me.NavigationService.Navigate(New Uri(Me.addressTextBox.Text), Date.Now)
End Sub
Private Sub NavigationService_LoadCompleted(ByVal sender As Object, ByVal e As NavigationEventArgs)
Dim requestDateTime As Date = CDate(e.ExtraData)
Dim msg As String = String.Format("Request started {0}" & vbLf & "Request completed {1}", requestDateTime, Date.Now)
MessageBox.Show(msg)
End Sub
Keterangan
Karena navigasi tidak sinkron, dimungkinkan bagi beberapa navigasi untuk berlangsung pada saat yang sama. Misalnya, jika ada dua bingkai anak pada satu halaman, kedua bingkai dapat menavigasi. Dalam hal ini, berbagai peristiwa navigasi yang dinaikkan oleh NavigationService dapat dinaikkan beberapa kali, satu untuk setiap bagian konten yang sedang dinavigasi, dan belum tentu agar navigasi diminta. Akibatnya, jika permintaan navigasi tertentu perlu memproses data yang khusus untuk permintaan individu, permintaan tidak dapat menggunakan data yang tersedia untuk semua permintaan navigasi. Sebagai gantinya, Anda dapat menggunakan navigationState
untuk meneruskan data untuk pemrosesan navigasi yang khusus untuk satu permintaan navigasi.
Argumen peristiwa berikut menyediakan akses ke status navigasi:
ExtraData (diteruskan ke Navigating acara).
ExtraData (diteruskan ke Navigated, NavigationStopped, LoadCompleted penanganan aktivitas).
Lihat juga
Berlaku untuk
Navigate(Uri)
Navigasikan secara asinkron ke konten yang ditentukan oleh URI.
public:
bool Navigate(Uri ^ source);
public bool Navigate (Uri source);
member this.Navigate : Uri -> bool
Public Function Navigate (source As Uri) As Boolean
Parameter
Mengembalikan
true
jika navigasi tidak dibatalkan; jika tidak, false
.
Contoh
Contoh berikut menunjukkan cara menavigasi ke URI.
void goButton_Click(object sender, RoutedEventArgs e)
{
this.NavigationService.Navigate(new Uri(this.addressTextBox.Text));
}
Private Sub goButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
Me.NavigationService.Navigate(New Uri(Me.addressTextBox.Text))
End Sub
Keterangan
Nilai source
dapat berupa URL Web atau URI paket yang valid (lihat Paket URI di WPF).
Navigate akan menavigasi ke URI yang ditentukan oleh source
jika kondisi berikut ini benar:
Acara Navigating tidak dibatalkan.
Permintaan web (lihat Navigating) dapat dibuat.
Jika source
adalah null
, konten yang ada (Content) dibersihkan.
Catatan
Saat mengunduh konten Web, Anda mungkin menerima pengecualian Web (misalnya, 404: File Tidak Ditemukan). Anda dapat menangani pengecualian tersebut dari NavigationFailed.
Anda dapat menggunakan Navigate untuk menavigasi ke fragmen konten. Jika konten yang diidentifikasi oleh URI adalah konten saat ini, konten tersebut tidak diunduh lagi.
Lihat juga
Berlaku untuk
Navigate(Object)
Navigasikan secara asinkron ke konten yang dimuat oleh objek.
public:
bool Navigate(System::Object ^ root);
public bool Navigate (object root);
member this.Navigate : obj -> bool
Public Function Navigate (root As Object) As Boolean
Parameter
- root
- Object
Objek yang berisi konten yang akan dinavigasi.
Mengembalikan
true
jika navigasi tidak dibatalkan; jika tidak, false
.
Contoh
Contoh berikut menunjukkan cara menavigasi ke objek yang Page berisi pohon konten sumber.
void goObjectButton_Click(object sender, RoutedEventArgs e)
{
this.NavigationService.Navigate(new ContentPage());
}
Private Sub goObjectButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
Me.NavigationService.Navigate(New ContentPage())
End Sub
Keterangan
Navigate akan menavigasi ke Object yang ditentukan oleh root
jika kondisi berikut ini benar:
Acara Navigating tidak dibatalkan.
Permintaan web (lihat Navigating) dapat dibuat.
Jika root
adalah null
, konten yang ada (Content) dibersihkan.
Catatan
Saat mengunduh konten Web, Anda mungkin menerima pengecualian Web (misalnya, 404: File Tidak Ditemukan). Anda dapat menangani pengecualian tersebut dari NavigationFailed.
Lihat juga
Berlaku untuk
Navigate(Object, Object)
Navigasikan secara asinkron ke konten yang dimuat oleh objek, dan teruskan objek yang berisi data yang akan digunakan untuk diproses selama navigasi.
public:
bool Navigate(System::Object ^ root, System::Object ^ navigationState);
public bool Navigate (object root, object navigationState);
member this.Navigate : obj * obj -> bool
Public Function Navigate (root As Object, navigationState As Object) As Boolean
Parameter
- root
- Object
Objek yang berisi konten yang akan dinavigasi.
- navigationState
- Object
Objek yang berisi data yang akan digunakan untuk diproses selama navigasi.
Mengembalikan
true
jika navigasi tidak dibatalkan; jika tidak, false
.
Contoh
Contoh berikut menunjukkan cara menavigasi ke objek yang Page berisi konten sumber, dan melewati status navigasi.
void goButton_Click(object sender, RoutedEventArgs e)
{
this.NavigationService.Navigate(new ContentPage(), DateTime.Now);
}
void NavigationService_LoadCompleted(object sender, NavigationEventArgs e)
{
DateTime requestDateTime = (DateTime)e.ExtraData;
string msg = string.Format("Request started {0}\nRequest completed {1}", requestDateTime, DateTime.Now);
MessageBox.Show(msg);
}
Private Sub goButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
Me.NavigationService.Navigate(New ContentPage(), Date.Now)
End Sub
Private Sub NavigationService_LoadCompleted(ByVal sender As Object, ByVal e As NavigationEventArgs)
Dim requestDateTime As Date = CDate(e.ExtraData)
Dim msg As String = String.Format("Request started {0}" & vbLf & "Request completed {1}", requestDateTime, Date.Now)
MessageBox.Show(msg)
End Sub
Keterangan
Metode ini memiliki perilaku yang sama dengan NavigationService.Navigate, meskipun objek diteruskan alih-alih URI.