NavigationService.Navigating イベント

定義

新しいナビゲーションが要求されたときに発生します。

public:
 event System::Windows::Navigation::NavigatingCancelEventHandler ^ Navigating;
public event System.Windows.Navigation.NavigatingCancelEventHandler Navigating;
member this.Navigating : System.Windows.Navigation.NavigatingCancelEventHandler 
Public Custom Event Navigating As NavigatingCancelEventHandler 

イベントの種類

NavigatingCancelEventHandler

次の例は、静的コンテンツを更新する要求が行われたかどうかを検出し、その場合は要求を取り消す方法 Navigating を示しています。

Navigating.

void NavigationService_Navigating(object sender, NavigatingCancelEventArgs e)
{
    // Don't allow refreshing of a static page
    if ((e.NavigationMode == NavigationMode.Refresh) &&
        (e.Uri.OriginalString == "StaticPage.xaml"))
    {
        e.Cancel = true;
    }
}
Private Sub NavigationService_Navigating(ByVal sender As Object, ByVal e As NavigatingCancelEventArgs)
    ' Don't allow refreshing of a static page
    If (e.NavigationMode = NavigationMode.Refresh) AndAlso (e.Uri.OriginalString = "StaticPage.xaml") Then
        e.Cancel = True
    End If
End Sub

注釈

Navigating は、新しいナビゲーションが要求されたときに発生しますが、ソース コンテンツが要求される前に発生します。次の場合も含まれます。

  • Navigate が呼ばれたとき。

  • GoBack または GoForward 呼び出されます (または、ナビゲーション UI からエントリが選択されています)。

  • コンテンツ フラグメントが移動します。

ナビゲーションを開始する前に、ナビゲーション要求に関する関連する情報を検出する必要があるかどうかを処理 Navigating します。 この情報は、イベント ハンドラーに NavigatingCancelEventArgs 渡される Navigating オブジェクトから入手できます。

WebRequestナビゲーション用のオブジェクトが作成され、パラメーターからNavigatingCancelEventArgs使用できます。この時点で実際の要求が行われなかったため、必要に応じてオブジェクトをWebRequest再構成できます。

また、必要に応じて、true に設定Cancelしてナビゲーションを取り消す処理も行NavigatingCancelEventArgsいます。 ナビゲーションを取り消すと、他のナビゲーション イベントは発生しません。

注意

アプリケーションがブラウザーでホストされている場合、ユーザーがイベントをキャンセルしてアプリケーションから離れるのを Navigating 防ぐことはできません。

最初のコンテンツがナビゲーター (NavigationWindow、 ) によって移動されると、 Frame移動先のコンテンツの各部分がナビゲーション履歴に追加されます。 移動先のコンテンツに関する状態情報を保存する必要がある場合は、オブジェクトを設定 ContentStateToSave して、そのコンテンツのジャーナル エントリに状態を CustomContentState 追加できます。

注意

発生NavigatingするとNavigationService、オブジェクトのApplicationイベントも発生Application.Navigatingします。

適用対象

こちらもご覧ください