ToolTipService.ToolTipOpeningEvent フィールド

定義

ToolTipOpening サービスを使用してツールヒントを表示するオブジェクトによって公開される ToolTipService イベントを識別します。

public: static initonly System::Windows::RoutedEvent ^ ToolTipOpeningEvent;
public static readonly System.Windows.RoutedEvent ToolTipOpeningEvent;
 staticval mutable ToolTipOpeningEvent : System.Windows.RoutedEvent
Public Shared ReadOnly ToolTipOpeningEvent As RoutedEvent 

フィールド値

RoutedEvent

次の例は、イベントのイベント ハンドラーを設定する方法を FrameworkElement.ToolTipOpening 示しています。 この場合、イベント ハンドラーは実際には 、FrameworkElement.ToolTipOpeningハンドラーがアタッチされる場所が派生クラスFrameworkElementであるためEllipseです。

ellipse2.AddHandler(ToolTipService.ToolTipOpeningEvent,
    new RoutedEventHandler(whenToolTipOpens));
ellipse2.AddHandler(ToolTipService.ToolTipClosingEvent,
    new RoutedEventHandler(whenToolTipCloses));
ellipse2.AddHandler(ToolTipService.ToolTipOpeningEvent, New RoutedEventHandler(AddressOf whenToolTipOpens))
ellipse2.AddHandler(ToolTipService.ToolTipClosingEvent, New RoutedEventHandler(AddressOf whenToolTipCloses))

void whenToolTipOpens(object sender, RoutedEventArgs e)
{
    Ellipse ell = new Ellipse();
    if (sender.GetType().FullName.Equals("System.Windows.Shapes.Ellipse"))
    {
        ell = (Ellipse)sender;
        ell.Fill = Brushes.Blue;
    }
    else if (sender.GetType().FullName.Equals(
                             "System.Windows.Controls.ToolTip"))
    {
        ToolTip t = (ToolTip)sender;
        Popup p = (Popup)t.Parent;
        ell = (Ellipse)p.PlacementTarget;
        ell.Fill = Brushes.Blue;
    }
}

void whenToolTipCloses(object sender, RoutedEventArgs e)
{
    Ellipse ell = new Ellipse();
    if (sender.GetType().FullName.Equals(
                      "System.Windows.Shapes.Ellipse"))
    {
        ell = (Ellipse)sender;
        ell.Fill = Brushes.Gray;
    }
    else if (sender.GetType().FullName.Equals(
                           "System.Windows.Controls.ToolTip"))
    {
        ToolTip t = (ToolTip)sender;
        Popup p = (Popup)t.Parent;
        ell = (Ellipse)p.PlacementTarget;
        ell.Fill = Brushes.Gray;
    }
}

Private Sub whenToolTipOpens(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim ell As New Ellipse()
    If sender.GetType().FullName.Equals("System.Windows.Shapes.Ellipse") Then
        ell = CType(sender, Ellipse)
        ell.Fill = Brushes.Blue
    ElseIf sender.GetType().FullName.Equals("System.Windows.Controls.ToolTip") Then
        Dim t As ToolTip = CType(sender, ToolTip)
        Dim p As Popup = CType(t.Parent, Popup)
        ell = CType(p.PlacementTarget, Ellipse)
        ell.Fill = Brushes.Blue
    End If
End Sub

Private Sub whenToolTipCloses(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim ell As New Ellipse()
    If sender.GetType().FullName.Equals("System.Windows.Shapes.Ellipse") Then
        ell = CType(sender, Ellipse)
        ell.Fill = Brushes.Gray
    ElseIf sender.GetType().FullName.Equals("System.Windows.Controls.ToolTip") Then
        Dim t As ToolTip = CType(sender, ToolTip)
        Dim p As Popup = CType(t.Parent, Popup)
        ell = CType(p.PlacementTarget, Ellipse)
        ell.Fill = Brushes.Gray
    End If
End Sub

注釈

このイベントは ToolTipOpening 、ツールヒントが開く直前に発生します。 ツールヒントが定義されていない場合、またはツールヒントの内容が null に設定されている場合、このイベントは発生しません。

このフィールドは、このサービスを使用するクラスの ToolTipOpening イベントの動作を登録します。 クラスとFrameworkContentElementクラスはFrameworkElementどちらも、ToolTipService共通言語ランタイム (CLR) アクセサーFrameworkElement.ToolTipOpeningを介してこのイベントを実装し、公開しますFrameworkContentElement.ToolTipOpening

ツールヒントをオブジェクトとして ToolTip 指定すると、ツールヒントが Opened 開いたときにもイベントが発生します。

適用対象

こちらもご覧ください