Данная статья переведена с помощью средств машинного перевода. Чтобы просмотреть ее на английском языке, установите флажок Английский. Вы также можете просматривать английский текст во всплывающем окне, наводя указатель мыши на переведенный текст.
Перевод
Английский

Событие Control.MouseDoubleClick

 

Опубликовано: Октябрь 2016

Вызывается при нажатии кнопки мыши два или более раз.

Пространство имен:   System.Windows.Controls
Сборка:  PresentationFramework (в PresentationFramework.dll)

public event MouseButtonEventHandler MouseDoubleClick

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

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

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

Поле идентификатора

MouseDoubleClickEvent

Стратегия маршрутизации

Direct

Делегат

MouseButtonEventHandler

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

<Button Name="btn" Background="Red" 
        MouseDoubleClick="ChangeBackground">
  Background
</Button>

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

void ChangeBackground(object sender, RoutedEventArgs e)
{
    if (btn.Background == Brushes.Red)
    {
        btn.Background = new LinearGradientBrush(Colors.LightBlue, Colors.SlateBlue, 90);
        btn.Content = "Control background changes from red to a blue gradient.";
    }
    else
    {
        btn.Background = Brushes.Red;
        btn.Content = "Background";
    }
}

.NET Framework
Доступно с 3.0
Вернуться в начало
Показ: