Udostępnij za pośrednictwem


UIElement.MouseLeftButtonDown Zdarzenie

Definicja

Występuje, gdy lewy przycisk myszy jest naciskany, gdy wskaźnik myszy jest nad tym elementem.

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

Typ zdarzenia

Implementuje

Uwagi

Chociaż to zdarzenie kierowane wydaje się podążać za rozbijaną trasą przez drzewo elementów, w rzeczywistości jest to bezpośrednie zdarzenie kierowane, które jest wywoływane i przywracane wzdłuż drzewa elementów przez każdy UIElementelement .

To zdarzenie jest jednym z kilku powiązanych zdarzeń, które zgłaszają specyfikę przycisku myszy zdarzenia bazowego Mouse.MouseDown , które jest dołączonym zdarzeniem przetwarzanym przez każdy element wzdłuż trasy zdarzenia.

Dane zdarzenia tego zdarzenia uwidacznia dane zdarzenia bazowego Mouse.MouseDown . Jeśli to zdarzenie jest oznaczone jako obsługiwane wzdłuż trasy zdarzenia, zdarzenia specyficzne dla przycisku myszy są nadal zgłaszane; jednak procedury obsługi zdarzeń specyficznych dla przycisku myszy muszą zostać dodane przez jawne wywołanie metody AddHandler, z opcją obsługi zdarzeń, które są już oznaczone jako obsługiwane, w celu bycia odbiornikami zdarzenia. Jeśli oznaczysz MouseLeftButtonDown obsługę, oznaczasz zasadniczo Mouse.MouseDown obsługę wszystkich kolejnych odbiorników wzdłuż trasy i wszystkich powiązanych zdarzeń. Może to dotyczyć zdarzeń wygenerowanych przez program obsługi klas, takich jak MouseDoubleClick.

Koncepcyjnie pomyśl o tym zdarzeniu (i innych zdarzeniach przycisku myszy na UIElement) jako "usługa" myszy (z definicją usługi podaną przez klasę Mouse ). Zdarzenie dodaje wygodę braku konieczności sprawdzania stanów przycisku myszy (w lewo, w górę) oryginalnych zdarzeń myszy w danych zdarzenia. W przypadku bardziej zaawansowanych scenariuszy, takich jak sprawdzanie stanów przycisków innych niż standardowe, może być konieczne użycie interfejsów API w Mouse klasie, a nie tych w systemie UIElement.

Ważne

Niektóre klasy kontrolek mogą mieć z natury obsługę klas dla zdarzeń przycisku myszy. Zdarzenie w dół przycisku myszy po lewej stronie jest najbardziej prawdopodobnym zdarzeniem obsługującym klasę w kontrolce. Obsługa klas często oznacza zdarzenie klasy bazowej Mouse jako obsługiwane. Gdy zdarzenie zostanie oznaczone jako obsługiwane, inne programy obsługi wystąpień dołączone do tego elementu nie są zwykle wywoływane. Wszystkie inne programy obsługi klas lub wystąpień dołączone do elementów w kierunku bubbling w kierunku katalogu głównego w drzewie interfejsu użytkownika również nie są zwykle podniesione.

Możesz rozwiązać problem opisany w poprzednim artykule Ważne i nadal odbierać MouseLeftButtonDown zdarzenia dla zdarzeń z lewego przycisku myszy w dół w klasie pochodnej, która obsługuje klasy przy użyciu jednego z następujących rozwiązań:

  • Dołącz programy obsługi dla PreviewMouseDown zdarzenia, które nie jest oznaczone jako obsługiwane przez kontrolki. Zwróć uwagę, że ponieważ jest to zdarzenie w wersji zapoznawczej, trasa rozpoczyna się od katalogu głównego i tuneli w dół do kontrolki.

  • Zarejestruj procedurę obsługi w kontrolce, wywołując AddHandler i wybierając opcję podpisu, która umożliwia programom obsługi nasłuchiwanie zdarzeń, nawet jeśli są one już oznaczone jako obsługiwane w danych zdarzeń trasowanych.

Informacje dotyczące kierowanego zdarzenia

Pole identyfikatora MouseLeftButtonDownEvent
Strategia routingu Direct
Delegat MouseButtonEventHandler
  • Zastąp OnMouseLeftButtonDown , aby zaimplementować obsługę klas dla tego zdarzenia w klasach pochodnych.

Dotyczy

Zobacz też