次の方法で共有


RoutedEventHandler 代理人

定義

すべてのルーティング イベントに共通なデータ以外の特定のイベント データを持たない、さまざまなルーティング イベントを処理するメソッドを表します。

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

パラメーター

sender
Object

イベント ハンドラーがアタッチされているオブジェクト。

e
RoutedEventArgs

イベントのデータ。

注釈

デリゲートは RoutedEventHandler 、イベント データ内のイベント固有の情報を報告しないルーティング イベントに使用されます。 このようなルーティング イベントは多数あります。顕著な例としては Click 、 と があります Loaded

一般的な共通言語ランタイム (CLR) イベントとは対照的に、ルーティング イベントのハンドラーを記述する場合の最も注目すべき違いは sender 、イベント (ハンドラーがアタッチされて呼び出される要素) の が必ずしもイベントのソースと見なされない点です。 ソースは、イベント データ (Source) のプロパティとして報告されます。 と Source の違senderいは、要素ツリーを介したルーティング イベントのトラバーサル中に、イベントが異なる要素にルーティングされた結果です。

ダイレクト イベントまたはバブル ルーティング イベントのルーティング動作に意図的に関心がない場合に、最初に発生する要素のルーティング イベントのみを処理する場合は、 または Source をオブジェクト参照に使用senderできます。 この状況では、 senderSource は同じオブジェクトです。

ルーティング イベントの固有の機能を利用し、それに応じてハンドラーを記述する場合、イベント ハンドラーの作成時に処理するイベント データの 2 つの最も重要なプロパティは と HandledですSource

入力イベントと WPF コントロール クラスの特定の組み合わせでは、イベントを発生させる要素は、イベントを処理する最初の要素ではありません。 入力イベントにイベントのプレビュー バージョンがある場合、要素ツリーのルートは最初の機会を持ち、共有イベント データで を にtrue設定Handledでき、入力イベントがイベント ルート内の残りの要素にどのように報告されるかに影響を与える可能性があります。 プレビュー処理動作では、特定のルーティング イベントが期待どおりに発生しない外観が得られます。 詳細については、「 プレビュー イベント 」と「 入力の概要」を参照してください。

拡張メソッド

GetMethodInfo(Delegate)

指定したデリゲートによって表されるメソッドを表すオブジェクトを取得します。

適用対象