次の方法で共有


NavigationEventHandler 代理人

定義

IIS マネージャーのナビゲーション イベントを処理するメソッドを表します。

public delegate void NavigationEventHandler(System::Object ^ sender, NavigationEventArgs ^ e);
public delegate void NavigationEventHandler(object sender, NavigationEventArgs e);
type NavigationEventHandler = delegate of obj * NavigationEventArgs -> unit
Public Delegate Sub NavigationEventHandler(sender As Object, e As NavigationEventArgs)

パラメーター

sender
Object

イベントのソース。

e
NavigationEventArgs

イベント データを格納している NavigationEventArgs

次の例では、カスタム ナビゲーション イベント ハンドラー を追加します OnNavigationServiceNavigationPerformed

public MRUTaskList(IServiceProvider serviceProvider) {

    _serviceProvider = serviceProvider;

    INavigationService navigationService =
        (INavigationService)_serviceProvider.GetService(
        typeof(INavigationService));
    navigationService.NavigationPerformed +=
        new NavigationEventHandler(
        OnNavigationServiceNavigationPerformed);

    // Make sure we have enough buckets for path 
    // types and initialize them.

    Array configurationPathTypes =
        Enum.GetValues(typeof(ConfigurationPathType));
    _features = new MRUList<MRUPageInfo>[
        configurationPathTypes.Length];
    for (int i = 0; i < _features.Length; i++) {
        _features[i] = new MRUList<MRUPageInfo>(MAX_COUNT);
    }

    LoadPreferences();
}

private void OnNavigationServiceNavigationPerformed(
    object sender, NavigationEventArgs e) {
    NavigationItem item = e.NewItem;
    if (e.IsNew && (item != null) &&
        (item.PageType != null)) {
        // Ignore Home page navigations
        if (String.Equals(item.PageType.Name, "Homepage",
            StringComparison.OrdinalIgnoreCase)) {
            return;
        }

        MRUList<MRUPageInfo> features =
            _features[(int)item.ConfigurationPath.PathType];
        features.Add(new MRUPageInfo(
            item.PageType.AssemblyQualifiedName));
    }
} 

注釈

デリゲートを NavigationEventHandler 使用すると、ナビゲーションが発生したときにカスタム モジュールでアクションを実行できます。

NavigationEventHandler デリゲートを作成する場合は、イベントを処理するメソッドを指定します。 イベント ハンドラーにイベントを関連付けるには、イベントにデリゲートのインスタンスを追加します。 イベント ハンドラーは、デリゲートを削除しない限り、イベントが発生するたびに呼び出されます。 イベント ハンドラー デリゲートの詳細については、「 イベントとデリゲート」を参照してください。

適用対象