NavigationService.Navigate Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przejdź asynchronicznie do określonej zawartości źródłowej.
Przeciążenia
Navigate(Uri, Object, Boolean) |
Przejdź asynchronicznie do zawartości źródłowej znajdującej się w identyfikatorze URI, przekaż obiekt zawierający stan nawigacji do przetwarzania podczas nawigacji i piaskownicę zawartości. |
Navigate(Uri, Object) |
Przejdź asynchronicznie do zawartości źródłowej znajdującej się w identyfikatorze URI i przekaż obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji. |
Navigate(Uri) |
Przejdź asynchronicznie do zawartości określonej przez identyfikator URI. |
Navigate(Object) |
Przejdź asynchronicznie do zawartości zawartej przez obiekt. |
Navigate(Object, Object) |
Przejdź asynchronicznie do zawartości zawartej przez obiekt i przekaż obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji. |
Navigate(Uri, Object, Boolean)
Przejdź asynchronicznie do zawartości źródłowej znajdującej się w identyfikatorze URI, przekaż obiekt zawierający stan nawigacji do przetwarzania podczas nawigacji i piaskownicę zawartości.
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
Obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji.
- sandboxExternalContent
- Boolean
Pobierz zawartość do piaskownicy zabezpieczeń częściowego zaufania (z domyślnym zestawem uprawnień w strefie internetowej, jeśli true
. Wartość domyślna to false
.
Zwraca
true
jeśli nawigacja nie zostanie anulowana; w przeciwnym razie , false
.
Uwagi
Ta metoda jest przeznaczona tylko dla aplikacji autonomicznych i zawartości języka XAML (Extensible Application Markup Language).
Ta metoda wykazuje takie samo zachowanie jak NavigationService.Navigate, i rozszerza ją, upewniając się, że pobierana zawartość jest umieszczana w piaskownicy zabezpieczeń częściowego zaufania (z domyślnym zestawem uprawnień strefy internetowej — zobacz WPF Partial Trust Security).
Zobacz też
Dotyczy
Navigate(Uri, Object)
Przejdź asynchronicznie do zawartości źródłowej znajdującej się w identyfikatorze URI i przekaż obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji.
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
Obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji.
Zwraca
true
jeśli nawigacja nie zostanie anulowana; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano przejście do identyfikatora URI i przekazanie stanu nawigacji.
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
Uwagi
Ponieważ nawigacje są asynchroniczne, istnieje możliwość, że wiele nawigacji będzie w toku w tym samym czasie. Jeśli na przykład na jednej stronie znajdują się dwie ramki podrzędne, obie ramki mogą być nawigowane. W takim przypadku różne zdarzenia nawigacji, które są wywoływane NavigationService przez program, mogą być wywoływane wiele razy, jeden dla każdego elementu zawartości, do której przechodzi się, i niekoniecznie w celu żądania nawigacji. W związku z tym, jeśli określone żądanie nawigacji musi przetwarzać dane specyficzne dla pojedynczego żądania, nie może używać danych dostępnych dla wszystkich żądań nawigacji. Zamiast tego można przekazać navigationState
dane do przetwarzania nawigacji specyficznego dla jednego żądania nawigacji.
Następujące argumenty zdarzeń zapewniają dostęp do stanu nawigacji:
ExtraData (przekazane do Navigating zdarzenia).
ExtraData(przekazane do programów obsługi zdarzeń Navigated, , NavigationStoppedLoadCompleted ).
Zobacz też
Dotyczy
Navigate(Uri)
Przejdź asynchronicznie do zawartości określonej przez identyfikator 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
Zwraca
true
jeśli nawigacja nie zostanie anulowana; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano, jak przejść do identyfikatora 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
Uwagi
Wartość source
może być adresem URL sieci Web lub prawidłowym identyfikatorem URI pakietu (zobacz Identyfikatory URI pakietów w WPF).
Navigate przejdzie do identyfikatora URI określonego przez source
, jeśli spełnione są następujące warunki:
Zdarzenie Navigating nie zostało anulowane.
Można utworzyć żądanie internetowe (zobacz Navigating).
Jeśli source
jest to null
, istniejąca zawartość (Content) jest wyczyszczone.
Uwaga
Podczas pobierania zawartości sieci Web może zostać wyświetlony wyjątek sieci Web (na przykład 404: Nie znaleziono pliku). Takie wyjątki można obsługiwać z NavigationFailedprogramu .
Możesz użyć Navigate polecenia , aby przejść do fragmentu zawartości. Jeśli zawartość zidentyfikowana przez identyfikator URI jest bieżącą zawartością, nie zostanie pobrana ponownie.
Zobacz też
Dotyczy
Navigate(Object)
Przejdź asynchronicznie do zawartości zawartej przez obiekt.
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
Obiekt zawierający zawartość do przejścia.
Zwraca
true
jeśli nawigacja nie zostanie anulowana; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano, jak przejść do Page obiektu zawierającego drzewo zawartości źródłowej.
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
Uwagi
Navigateprzejdzie do określonego przezroot
, Object jeśli spełnione są następujące warunki:
Zdarzenie Navigating nie zostało anulowane.
Można utworzyć żądanie internetowe (zobacz Navigating).
Jeśli root
jest to null
, istniejąca zawartość (Content) jest wyczyszczone.
Uwaga
Podczas pobierania zawartości sieci Web może zostać wyświetlony wyjątek sieci Web (na przykład 404: Nie znaleziono pliku). Takie wyjątki można obsługiwać z NavigationFailedprogramu .
Zobacz też
Dotyczy
Navigate(Object, Object)
Przejdź asynchronicznie do zawartości zawartej przez obiekt i przekaż obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji.
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
Obiekt zawierający zawartość do przejścia.
- navigationState
- Object
Obiekt zawierający dane, które mają być używane do przetwarzania podczas nawigacji.
Zwraca
true
jeśli nawigacja nie zostanie anulowana; w przeciwnym razie , false
.
Przykłady
W poniższym przykładzie pokazano, jak przejść do obiektu zawierającego zawartość źródłową Page i przekazać stan nawigacji.
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
Uwagi
Ta metoda ma takie samo zachowanie jak NavigationService.Navigate, chociaż obiekt jest przekazywany zamiast identyfikatora URI.