PresentationSource.AddSourceChangedHandler メソッド

定義

SourceChanged イベントのハンドラーを、指定した要素に追加します。

public:
 static void AddSourceChangedHandler(System::Windows::IInputElement ^ element, System::Windows::SourceChangedEventHandler ^ handler);
[System.Security.SecurityCritical]
public static void AddSourceChangedHandler (System.Windows.IInputElement element, System.Windows.SourceChangedEventHandler handler);
public static void AddSourceChangedHandler (System.Windows.IInputElement element, System.Windows.SourceChangedEventHandler handler);
[<System.Security.SecurityCritical>]
static member AddSourceChangedHandler : System.Windows.IInputElement * System.Windows.SourceChangedEventHandler -> unit
static member AddSourceChangedHandler : System.Windows.IInputElement * System.Windows.SourceChangedEventHandler -> unit
Public Shared Sub AddSourceChangedHandler (element As IInputElement, handler As SourceChangedEventHandler)

パラメーター

element
IInputElement

ハンドラーを追加する対象の要素。

handler
SourceChangedEventHandler

追加するハンドラー実装。

属性

注釈

このイベントの構文ブロックの状態にかかわらず、正当な拡張アプリケーション マークアップ言語 (XAML) 添付プロパティの使用法はありません。 Extensible Application Markup Language (XAML) でハンドラーを追加しないでください。また、コード内のハンドラーは、プレゼンテーション (PresentationSource ) コンテンツのホストとして機能するオブジェクトにのみ配置する必要があります。 このようなハンドラーは、オブジェクトの初期化中にのみアタッチする必要があり、Dispose メソッドまたは同等のオブジェクト クリーンアップで明示的に削除する必要があります。

これはルーティング イベントですが、通常のルーティング イベントの動作とは異なる特別な制限があります。これは、このイベントの処理に関連する一般的なアプリケーション シナリオの要素の数が比較的少ないためです。

  • メソッドまたは ContentElementAddHandler メソッドをUIElement使用してハンドラーを追加することはできません。 AddSourceChangedHandler を使用する必要があります。

  • イベント自体がパブリックとして公開されていないため、C# += および -= イベント ハンドラー構文、および関連する言語固有のハンドラー構文はサポートされていません。 ハンドラーを PresentationSource 直接追加および削除するためのユーティリティ メソッドのみがサポートされています。

  • クラス ハンドラーは使用できません。 具体的には、SourceChanged の識別子フィールドは存在しますが、識別子はパブリックではないので、クラス コンストラクターでこのイベントに対して を呼び出 RegisterClassHandler すことはできません。

  • 登録されているすべてのハンドラーは、いずれかのハンドラーが引数を処理済みとしてマークしようとした場合でも、SourceChanged イベントを受け取ります。

適用対象