Mouse.MouseDown Toegevoegde gebeurtenis
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Treedt op wanneer een muisknop wordt ingedrukt.
see AddMouseDownHandler, and RemoveMouseDownHandler
see AddMouseDownHandler, and RemoveMouseDownHandler
see AddMouseDownHandler, and RemoveMouseDownHandler
Opmerkingen
Als u wilt bepalen welke muisknop is ingedrukt, controleert u de ChangedButton eigenschap in de MouseButtonEventArgs doorgegeven aan de handler.
Dit is een gekoppelde gebeurtenis. WPF implementeert gekoppelde gebeurtenissen als gerouteerde gebeurtenissen. Gekoppelde gebeurtenissen zijn in wezen een XAML-taalconcept voor het verwijzen naar gebeurtenissen die kunnen worden verwerkt op objecten die deze gebeurtenis niet definiƫren, die WPF uitbreidt door de gebeurtenis ook in staat te stellen een route te doorlopen. Gekoppelde gebeurtenissen hebben geen syntaxis voor directe verwerking in code; als u handlers wilt koppelen voor een gerouteerde gebeurtenis in code, gebruikt u een aangewezen methode Add*Handler. Zie Overzicht van gekoppelde gebeurtenissen voor meer informatie.
Het Windows Presentation Foundation -framework (WPF) bouwt voort op deze gekoppelde gebeurtenis door deze als twee verschillende CLR-gebeurtenissen (Common Language Runtime) op UIElement en ContentElement: MouseLeftButtonDown en MouseRightButtonDown. Deze implementaties verwerken de onderliggende MouseDown gebeurtenis en lezen de argumenten van de gebeurtenis om te bepalen of de linker- of rechtermuisknop betrokken was. Voor een muis met drie knoppen is er geen ondersteuning op frameworkniveau voor de knop Midden. Gebruik de MouseDown gebeurtenis en controleer de MiddleButton status in de gebeurtenisargumenten.
Important
Een paar ContentElement afgeleide klassen met controle-achtig gedrag, bijvoorbeeld, Hyperlinkkunnen inherente klasseafhandeling hebben voor muisknopgebeurtenissen. De gebeurtenis met de linkermuisknop omlaag is de meest waarschijnlijke gebeurtenis die klasseafhandeling in een besturingselement heeft. De klasseafhandeling markeert vaak de onderliggende Mouse klassegebeurtenis zoals verwerkt. Zodra de gebeurtenis is gemarkeerd als handled, worden andere exemplaarhandlers die aan dat element zijn gekoppeld, gewoonlijk niet gegenereerd. Andere klasse- of exemplaarhandlers die zijn gekoppeld aan elementen in de bubblingrichting richting de hoofdmap in de UI-structuur, worden ook niet normaal gesproken verhoogd.
U kunt het probleem oplossen dat wordt beschreven in de voorgaande belangrijke opmerking en nog steeds gebeurtenissen ontvangt MouseDown voor gebeurtenissen met de linkermuisknop omlaag in een afgeleide klasse die klasseafhandeling heeft met behulp van een van deze oplossingen:
Koppel handlers voor de PreviewMouseDown gebeurtenis, die niet zijn gemarkeerd als verwerkt door de besturingselementen. U ziet dat omdat dit een preview-gebeurtenis is, de route begint bij de hoofdmap en tunnels naar het besturingselement.
Registreer een handler in het besturingselement procedureel door de handtekeningoptie aan te roepen AddHandler en te kiezen waarmee handlers kunnen luisteren naar gebeurtenissen, zelfs als ze al zijn gemarkeerd als verwerkt in de gerouteerde gebeurtenisgegevens.
Voor gerouteerde gebeurtenissen die betrekking hebben op de muis, moet u voorzichtig zijn met hoe of wanneer u ze markeert. De moeite om de juiste keuzes te maken over het feit of bovenliggende elementen ook op de hoogte moeten worden gesteld van een bepaalde muisactie, is in feite waarom het WPF framework het model heeft gekozen voor het weergeven van de onderliggende muisgebeurtenis als CLR-gebeurtenissen langs de route. Er zijn vergelijkbare problemen met tunneling van muis gebeurtenissen. Moet u de gebeurtenis afhandelen en deze niet laten verwerken door verdere onderliggende elementen naar de bron, en hoe zou dat van invloed zijn op het composieren van een besturingselement waar de compositing stukken mogelijk gedrag van de muis hebben verwacht?
Gerouteerde gebeurtenisgegevens
| Item | Waarde |
|---|---|
| Id-veld | MouseDownEvent |
| Routeringsstrategie | Borrelen |
| Gedelegeerde | MouseButtonEventHandler |
- De bijbehorende tunneling-gebeurtenis is PreviewMouseDown.