Bagikan melalui


NavigationService.Navigate Metode

Definisi

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

source
Uri

Objek Uri yang diinisialisasi dengan URI untuk konten yang diinginkan.

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

source
Uri

Objek Uri yang diinisialisasi dengan URI untuk konten yang diinginkan.

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:

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

source
Uri

Objek Uri yang diinisialisasi dengan URI untuk konten yang diinginkan.

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:

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:

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.

Lihat juga

Berlaku untuk