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


Control.PreviewMouseDoubleClick Событие

Определение

Происходит, когда пользователь нажимает кнопку мыши два или более раз.

public:
 event System::Windows::Input::MouseButtonEventHandler ^ PreviewMouseDoubleClick;
public event System.Windows.Input.MouseButtonEventHandler PreviewMouseDoubleClick;
member this.PreviewMouseDoubleClick : System.Windows.Input.MouseButtonEventHandler 
Public Custom Event PreviewMouseDoubleClick As MouseButtonEventHandler 

Тип события

Примеры

В следующем примере показано, как подключить обработчик событий к событию PreviewMouseDoubleClick .

<Button Name="btn1" Foreground="Black" 
        PreviewMouseDoubleClick="ChangeForeground">
  Foreground
</Button>

В следующем примере показан обработчик PreviewMouseDoubleClick событий события.

void ChangeForeground(object sender, RoutedEventArgs e)
{
    if (btn1.Foreground == Brushes.Green)
    {
        btn1.Foreground = Brushes.Black;
        btn1.Content = "Foreground";
    }
    else
    {
        btn1.Foreground = Brushes.Green;
        btn1.Content = "Control foreground(text) changes from black to green.";
    }
}
Private Sub ChangeForeground(ByVal Sender As Object, ByVal e As System.Windows.Input.MouseButtonEventArgs)

    If (btn1.Foreground Is Brushes.Green) Then
        btn1.Foreground = Brushes.Black
        btn1.Content = "Foreground"
    Else
        btn1.Foreground = Brushes.Green
        btn1.Content = "Control foreground(text) changes from black to green."
    End If

End Sub

Комментарии

Хотя это перенаправленное событие, кажется, следует туннелированному маршруту через дерево элементов, фактически это прямое перенаправленное событие, которое поднимается вдоль дерева элементов каждым.UIElement Если свойство задано в обработчике событий, последующие PreviewMouseDoubleClick события по маршруту будут возникать с Handled заданным значениемfalse, но MouseDoubleClick событие будет происходить с заданным значением trueHandled .PreviewMouseDoubleClickHandledtrue Это событие более высокого уровня для потребителей элементов управления, которые хотят получать уведомления, когда пользователь дважды щелкает элемент управления и обрабатывает событие в приложении.

Авторы элементов управления, которые хотят обрабатывать двойные щелчки мыши, должны использовать PreviewMouseLeftButtonDown событие, если ClickCount равно двум. Это приведет к тому, что состояние распространения Handled соответствующим образом распространяется в случае, когда другой элемент в дереве элементов обрабатывает событие.

Класс Control определяет PreviewMouseDoubleClick события и MouseDoubleClick события, но не соответствующие события с одним щелчком мыши. Чтобы узнать, щелкнул ли пользователь элемент управления один раз, обработайте MouseDown событие (или один из его коллег) и проверьте, равно ли ClickCount значение свойства 1.

Сведения о перенаправленных событиях

Элемент Ценность
Поле идентификатора PreviewMouseDoubleClickEvent
Стратегия маршрутизации Напрямую
Делегат MouseButtonEventHandler

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