Поделиться через


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 

Значение поля

Примеры

В следующем примере показано, как задать обработчик событий для FrameworkElement.ToolTipOpening события. В этом случае обработчик событий фактически используется для FrameworkElement.ToolTipOpening, так как Ellipse объект , к которому присоединен обработчик, является производным классом FrameworkElement.

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 события для классов, использующих эту службу. FrameworkElement Классы и FrameworkContentElement реализуют ToolTipService и предоставляют это событие с помощью методов FrameworkElement.ToolTipOpening доступа СРЕДЫ CLR и FrameworkContentElement.ToolTipOpening.

Если указать подсказку в качестве ToolTip объекта, Opened событие также возникает при открытии подсказки.

Применяется к

См. также раздел