次の方法で共有


RoutedEvent クラス

定義

Windows ランタイム イベント システムへのルーティング イベントを表します。

public ref class RoutedEvent sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RoutedEvent final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RoutedEvent
Public NotInheritable Class RoutedEvent
継承
Object Platform::Object IInspectable RoutedEvent
属性

この例では、 AddHandlerhandledEventsToo を として trueイベント ハンドラーを結び付けるための基本的な構文を示します。 この場合、ワイヤードされているイベントは タップされ RoutedEvent、例で使用される -type 識別子は TappedEvent です。 ハンドラーをワイヤ化する一般的な場所は、ページに 対して読み込まれる か、テンプレート化されたコントロールの 場合は OnApplyTemplate です。

void MainPage::pageRoot_Tapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
{
     //implementation
}
void MainPage::pageRoot_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
     this->AddHandler(UIElement::TappedEvent, ref new TappedEventHandler(this, &MainPage::pageRoot_Tapped), true);
}
private void pageRoot_Tapped(object sender, TappedRoutedEventArgs e)
{
    //implementation
}
private void pageRoot_Loaded_1(object sender, RoutedEventArgs e)
{
    this.AddHandler(UIElement.TappedEvent, new TappedEventHandler(pageRoot_Tapped), true);
}

注釈

Note

Windows ランタイム イベント システムでは、カスタム ルーティング イベントを作成できません。ルーティング イベントの動作を持つイベントを定義できるのは、Windows ランタイム自体だけです。

ルーティング イベントのしくみの詳細については、「 イベントとルーティング イベントの概要」を参照してください。 型はRoutedEventルーティング イベントのインフラストラクチャの一部ですが、一般的なWindows ランタイム アプリ プログラミングでは直接使用RoutedEventしません。

型のRoutedEvent目的は、DependencyProperty が依存関係プロパティ システムの識別子型を提供する方法と同様に、Windows ランタイム イベント システムの識別子として機能することです。 UIElement には、 型 RoutedEventの静的な読み取り専用プロパティがいくつか含まれており、名前付けパターンを使用して名前が付けられます。 各 RoutedEvent プロパティには、イベントにサフィックス "Event" を付加した名前が付けられます。 このような各プロパティは、その名前が始まるルーティング イベントの識別子です。 たとえば、 TappedEvent は、イベント システムへの Tapped ルーティング イベントを識別します。

ほとんどのアプリ コードを使用する場合、ハンドラーを追加または削除する目的で、XAML の名前でイベントを参照するか、コード内のコード エンティティ名でイベントを参照するだけで済みます。 識別子は RoutedEvent 、ルーティング イベントがシステム コードまたはアプリ コードによって処理済みとして以前にマークされている場合でも呼び出すハンドラーをアタッチする場合にのみ必要です。 このシナリオで使用する API と、パラメーターとして値を RoutedEvent 使用する API は 、UIElement.AddHandlerUIElement.RemoveHandler です。 詳しくは、「イベントとルーティング イベントの概要」をご覧ください。

RoutedEvent 識別子を使用するイベント

識別子を持ち RoutedEvent 、説明した UIElement.AddHandler 手法を使用できるルーティング イベントの一覧を次に示します。

Note

GotFocusLostFocus は ルーティング イベントのように動作しますが RoutedEvent 、識別子がないため、 AddHandler を使用することはできません。

適用対象

こちらもご覧ください