NavigationService.Navigate Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přejděte asynchronně na zadaný zdrojový obsah.
Přetížení
Navigate(Uri, Object, Boolean) |
Přejděte asynchronně na zdrojový obsah umístěný na identifikátoru URI, předejte objekt obsahující stav navigace ke zpracování během navigace a obsah v sandboxu. |
Navigate(Uri, Object) |
Přejděte asynchronně na zdrojový obsah umístěný na identifikátoru URI a předejte objekt obsahující data, která se mají použít ke zpracování během navigace. |
Navigate(Uri) |
Přechod asynchronně k obsahu, který je určený identifikátorem URI. |
Navigate(Object) |
Přechod asynchronně na obsah obsažený v objektu |
Navigate(Object, Object) |
Přejděte asynchronně k obsahu obsaženému objektem a předejte objekt obsahující data, která se mají použít ke zpracování během navigace. |
Navigate(Uri, Object, Boolean)
Přejděte asynchronně na zdrojový obsah umístěný na identifikátoru URI, předejte objekt obsahující stav navigace ke zpracování během navigace a obsah v sandboxu.
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
Parametry
- navigationState
- Object
Objekt obsahující data, která mají být použita ke zpracování během navigace.
- sandboxExternalContent
- Boolean
Stáhněte si obsah do sandboxu zabezpečení s částečným vztahem důvěryhodnosti (s výchozí sadou oprávnění internetové zóny, pokud true
. Výchozí formát je false
.
Návraty
true
pokud není zrušena navigace; v opačném případě . false
Poznámky
Tato metoda je určena pouze pro samostatné aplikace a obsah xaml (Extensible Application Markup Language).
Tato metoda vykazuje stejné chování jako NavigationService.Navigatea rozšiřuje ho tím, že zajišťuje, aby byl stahovaný obsah umístěn do izolovaného prostoru zabezpečení s částečným vztahem důvěryhodnosti (s výchozí sadou oprávnění zóny Internetu – viz Zabezpečení částečného vztahu důvěryhodnosti WPF).
Viz také
Platí pro
Navigate(Uri, Object)
Přejděte asynchronně na zdrojový obsah umístěný na identifikátoru URI a předejte objekt obsahující data, která se mají použít ke zpracování během navigace.
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
Parametry
- navigationState
- Object
Objekt obsahující data, která mají být použita ke zpracování během navigace.
Návraty
true
pokud není zrušena navigace; v opačném případě . false
Příklady
Následující příklad ukazuje přechod na identifikátor URI a předání stavu navigace.
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
Poznámky
Vzhledem k tomu, že jsou navigace asynchronní, je možné, že současně probíhá více navigací. Pokud jsou například na jedné stránce dva podřízené rámce, můžou procházet oba snímky. V tomto případě mohou být různé události navigace vyvolané aplikací NavigationService vyvolány vícekrát, jednou pro každou část obsahu, na kterou se prochází, a ne nutně v pořadí, v jakém byly navigace požadovány. V důsledku toho, pokud konkrétní požadavek na navigaci potřebuje zpracovat data, která jsou specifická pro jednotlivé požadavky, nemůže použít data, která jsou k dispozici pro všechny požadavky navigace. Místo toho můžete použít navigationState
k předávání dat pro zpracování navigace, která jsou specifická pro jeden navigační požadavek.
Následující argumenty událostí poskytují přístup ke stavu navigace:
ExtraData (předáno události Navigating ).
ExtraData(předáno Navigatedobslužné rutině událostí , NavigationStopped, ). LoadCompleted
Viz také
Platí pro
Navigate(Uri)
Přechod asynchronně k obsahu, který je určený identifikátorem URI.
public:
bool Navigate(Uri ^ source);
public bool Navigate (Uri source);
member this.Navigate : Uri -> bool
Public Function Navigate (source As Uri) As Boolean
Parametry
Návraty
true
pokud není zrušena navigace; v opačném případě . false
Příklady
Následující příklad ukazuje, jak přejít na identifikátor 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
Poznámky
Hodnota source
může být webová adresa URL nebo platný identifikátor URI balíčku (viz Identifikátory URI balíčků ve WPF).
Navigate přejde na identifikátor URI určený parametrem source
, pokud jsou splněny následující podmínky:
Událost Navigating není zrušena.
Je možné vytvořit webovou žádost (viz Navigating).
Pokud source
je null
, stávající obsah (Content) se vymaže.
Poznámka
Při stahování webového obsahu se může zobrazit výjimka webu (například 404: Soubor nebyl nalezen). Tyto výjimky můžete zpracovat pomocí .NavigationFailed
Pomocí příkazu Navigate můžete přejít na fragment obsahu. Pokud je obsah identifikovaný identifikátorem URI aktuálním obsahem, nestáhnou se znovu.
Viz také
Platí pro
Navigate(Object)
Přechod asynchronně na obsah obsažený v objektu
public:
bool Navigate(System::Object ^ root);
public bool Navigate (object root);
member this.Navigate : obj -> bool
Public Function Navigate (root As Object) As Boolean
Parametry
- root
- Object
Objekt obsahující obsah, na který se má přejít.
Návraty
true
pokud není zrušena navigace; v opačném případě . false
Příklady
Následující příklad ukazuje, jak přejít na Page objekt obsahující strom zdrojového obsahu.
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
Poznámky
Navigate přejde na Object zadaný pomocí root
, pokud jsou splněny následující podmínky:
Událost Navigating není zrušena.
Je možné vytvořit webovou žádost (viz Navigating).
Pokud root
je null
, stávající obsah (Content) se vymaže.
Poznámka
Při stahování webového obsahu se může zobrazit výjimka webu (například 404: Soubor nebyl nalezen). Tyto výjimky můžete zpracovat pomocí .NavigationFailed
Viz také
Platí pro
Navigate(Object, Object)
Přejděte asynchronně k obsahu obsaženému objektem a předejte objekt obsahující data, která se mají použít ke zpracování během navigace.
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
Parametry
- root
- Object
Objekt obsahující obsah, na který se má přejít.
- navigationState
- Object
Objekt obsahující data, která mají být použita ke zpracování během navigace.
Návraty
true
pokud není zrušena navigace; v opačném případě . false
Příklady
Následující příklad ukazuje, jak přejít na Page objekt obsahující zdrojový obsah a předat stav navigace.
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
Poznámky
Tato metoda má stejné chování jako NavigationService.Navigate, i když objekt je předán místo identifikátoru URI.