NavigationService.Navigate メソッド

定義

指定されたソース コンテンツに非同期に移動します。

オーバーロード

Navigate(Uri, Object, Boolean)

URI にあるソース コンテンツに非同期に移動して、ナビゲーション中の処理に使用するナビゲーションの状態を格納しているオブジェクトを渡し、コンテンツをサンドボックスに配置します。

Navigate(Uri, Object)

URI にあるソース コンテンツに非同期に移動して、ナビゲーション中の処理に使用するデータを格納しているオブジェクトを渡します。

Navigate(Uri)

URI で指定されたコンテンツに非同期に移動します。

Navigate(Object)

オブジェクトに格納されているコンテンツに非同期に移動します。

Navigate(Object, Object)

オブジェクトに格納されているコンテンツに非同期に移動して、ナビゲーション中の処理に使用するデータを格納しているオブジェクトを渡します。

Navigate(Uri, Object, Boolean)

URI にあるソース コンテンツに非同期に移動して、ナビゲーション中の処理に使用するナビゲーションの状態を格納しているオブジェクトを渡し、コンテンツをサンドボックスに配置します。

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

パラメーター

source
Uri

目的のコンテンツの URI で初期化された Uri オブジェクト。

navigationState
Object

ナビゲーション中の処理に使用するデータを格納しているオブジェクト。

sandboxExternalContent
Boolean

コンテンツを (既定のインターネット ゾーン アクセス許可が設定された) 部分信頼セキュリティ サンドボックスにダウンロードする場合は true。 既定値は、false です。

戻り値

ナビゲーションがキャンセルされない場合は true。それ以外の場合は false

注釈

このメソッドは、スタンドアロン アプリケーションと拡張アプリケーション マークアップ言語 (XAML) コンテンツに対してのみ使用されます。

このメソッドは と同じ動作 NavigationService.Navigateを示し、ダウンロードされるコンテンツが部分信頼セキュリティ サンドボックスに配置されるようにすることで拡張します (既定のインターネット ゾーンのアクセス許可セットを使用します。 「WPF 部分信頼セキュリティ」を参照)。

こちらもご覧ください

適用対象

Navigate(Uri, Object)

URI にあるソース コンテンツに非同期に移動して、ナビゲーション中の処理に使用するデータを格納しているオブジェクトを渡します。

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

パラメーター

source
Uri

目的のコンテンツの URI で初期化された Uri オブジェクト。

navigationState
Object

ナビゲーション中の処理に使用するデータを格納しているオブジェクト。

戻り値

ナビゲーションがキャンセルされない場合は true。それ以外の場合は false

次の例では、URI に移動し、ナビゲーション状態を渡す方法を示します。

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

注釈

ナビゲーションは非同期であるため、複数のナビゲーションを同時に進行中にすることができます。 たとえば、1 つのページに 2 つの子フレームがある場合、両方のフレームを移動できます。 この場合、 によって NavigationService 発生するさまざまなナビゲーション イベントは、移動先のコンテンツごとに 1 つずつ複数回発生する可能性があり、ナビゲーションが要求された順序で必ずしも発生するとは限りません。 そのため、特定のナビゲーション要求が個々の要求に固有のデータを処理する必要がある場合、すべてのナビゲーション要求で使用できるデータを使用することはできません。 代わりに、 を使用 navigationState して、1 つのナビゲーション要求に固有のナビゲーション処理用のデータを渡すことができます。

次のイベント引数は、ナビゲーション状態へのアクセスを提供します。

こちらもご覧ください

適用対象

Navigate(Uri)

URI で指定されたコンテンツに非同期に移動します。

public:
 bool Navigate(Uri ^ source);
public bool Navigate (Uri source);
member this.Navigate : Uri -> bool
Public Function Navigate (source As Uri) As Boolean

パラメーター

source
Uri

目的のコンテンツの URI で初期化された Uri オブジェクト。

戻り値

ナビゲーションがキャンセルされない場合は true。それ以外の場合は false

次の例は、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

注釈

source 値には、Web URL または有効なパック URI を指定できます ( 「WPF のパック URI」を参照)。

Navigate は、次の条件に該当する場合に によって source 指定された URI に移動します。

  • Navigatingイベントは取り消されません。

  • Web 要求 (を参照 Navigating) を作成できます。

が のnull場合source、既存のコンテンツ (Content) はクリアされます。

注意

Web コンテンツをダウンロードすると、Web 例外が発生する場合があります (例: 404: ファイルが見つかりません)。 このような例外は、 から NavigationFailed処理できます。

を使用 Navigate して、コンテンツ フラグメントに移動できます。 URI によって識別されるコンテンツが現在のコンテンツである場合、再びダウンロードされません。

こちらもご覧ください

適用対象

Navigate(Object)

オブジェクトに格納されているコンテンツに非同期に移動します。

public:
 bool Navigate(System::Object ^ root);
public bool Navigate (object root);
member this.Navigate : obj -> bool
Public Function Navigate (root As Object) As Boolean

パラメーター

root
Object

移動先のコンテンツを格納しているオブジェクト。

戻り値

ナビゲーションがキャンセルされない場合は true。それ以外の場合は false

次の例は、ソース コンテンツ ツリーを Page 含むオブジェクトに移動する方法を示しています。

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

注釈

Navigate は、次の条件に Object 該当する場合、 によって root 指定された に移動します。

  • Navigatingイベントは取り消されません。

  • Web 要求 (を参照 Navigating) を作成できます。

が のnull場合root、既存のコンテンツ (Content) はクリアされます。

注意

Web コンテンツをダウンロードすると、Web 例外が発生する場合があります (例: 404: ファイルが見つかりません)。 このような例外は、 から NavigationFailed処理できます。

こちらもご覧ください

適用対象

Navigate(Object, Object)

オブジェクトに格納されているコンテンツに非同期に移動して、ナビゲーション中の処理に使用するデータを格納しているオブジェクトを渡します。

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

パラメーター

root
Object

移動先のコンテンツを格納しているオブジェクト。

navigationState
Object

ナビゲーション中の処理に使用するデータを格納しているオブジェクト。

戻り値

ナビゲーションがキャンセルされない場合は true。それ以外の場合は false

次の例は、ソース コンテンツを含むオブジェクトに Page 移動し、ナビゲーション状態を渡す方法を示しています。

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

注釈

このメソッドの動作は と NavigationService.Navigate同じですが、オブジェクトは URI の代わりに渡されます。

こちらもご覧ください

適用対象