Sdílet prostřednictvím


Mouse.MouseDown Přidružená událost

Definice

Vyvolá se při stisku libovolného tlačítka myši.

see AddMouseDownHandler, and RemoveMouseDownHandler
see AddMouseDownHandler, and RemoveMouseDownHandler
see AddMouseDownHandler, and RemoveMouseDownHandler

Poznámky

Chcete-li zjistit, které tlačítko myši bylo stisklo, zkontrolujte ChangedButton vlastnost v objektu MouseButtonEventArgs předané obslužné rutině.

Toto je přidružená událost. WPF implementuje připojené události jako směrované události. Připojené události jsou v podstatě koncept jazyka XAML pro odkazování na události, které lze zpracovat u objektů, které danou událost nedefinují, což WPF rozšiřuje tím, že také umožňuje události procházet trasu. Připojené události nemají přímou syntaxi zpracování v kódu; pokud chcete připojit obslužné rutiny pro směrovanou událost v kódu, použijete určenou metodu Add*Handler. Podrobnosti najdete v přehledu připojených událostí.

Architektura Windows Presentation Foundation (WPF) staví na této připojené události tím, že ji zobrazí jako dvě různé události modulu CLR (Common Language Runtime) na UIElement a ContentElement: MouseLeftButtonDown a MouseRightButtonDown. Tyto implementace zpracovávají podkladovou MouseDown událost a čtou argumenty události k určení, zda bylo zapojeno levé nebo pravé tlačítko myši. U myši se třemi tlačítky není k dispozici podpora událostí na úrovni architektury pro středové tlačítko. Měli byste použít MouseDown událost a zkontrolovat MiddleButton stav v argumentech události.

Důležité

Několik ContentElement odvozených tříd, které mají chování podobné ovládacím prvkům, Hyperlinknapříklad , mohou mít inherentní zpracování tříd pro události tlačítka myši. Událost levého tlačítka myši dolů je nejpravděpodobnější událostí zpracování třídy v ovládacím prvku. Zpracování třídy často označuje podkladovou Mouse událost třídy jako zpracovanou. Jakmile je událost označena jako obslužná, ostatní obslužné rutiny instance, které jsou připojeny k danému prvku, nejsou obvykle vyvolány. Žádné jiné třídy nebo obslužné rutiny instance, které jsou připojeny k prvkům ve směru bublání směrem ke kořenu ve stromu uživatelského rozhraní, nejsou také obvykle aktivovány.

Problém popsaný v předchozí důležité poznámce a stále přijímat MouseDown události pro události levého tlačítka myši dolů v odvozené třídě, která má zpracování třídy, můžete vyřešit pomocí některého z těchto řešení:

  • Připojit obslužné rutiny pro PreviewMouseDown událost, která není označena jako zpracovávaná ovládacími prvky. Všimněte si, že vzhledem k tomu, že se jedná o událost preview, trasa začíná v kořenovém adresáři a tuneluje se dolů k ovládacímu prvku.

  • Zaregistrujte obslužnou rutinu na ovládacím prvku procedurálně voláním AddHandler a zvolením možnosti podpisu, která umožňuje obslužným rutinám naslouchat událostem, i když jsou již označeny jako zpracované ve směrovaných datech událostí.

U směrovaných událostí, které souvisejí s myší, dávejte pozor na to, jak nebo kdy je označíte jako zpracované. Potíže při provádění vhodných rozhodnutí o tom, zda by nadřazené prvky měly být také informovány o jakékoli dané akci myši je ve skutečnosti důvodem, proč WPF framework zvolil model, aby základní událost směrované myší byla vysušena jako události CLR podél trasy. Podobné problémy existují u událostí tunelování myši. Měli byste událost zpracovat a neměli by ji zpracovávat další podřízené položky směrem ke zdroji, a jak by to ovlivnilo sestavení ovládacího prvku, kde by kompozitující části mohly mít očekávané chování myši?

Informace o směrované události

Pole Identifikátor MouseDownEvent
Strategie směrování Bublající
Delegát MouseButtonEventHandler

Platí pro