I'm just starting out with WPF and need some help with routed events. I have added a datagrid with some animation, but i can't seem to find anywhere that shows me a list of routed events to use on the datagrid, or any other control for that matter. Seems to be a guessing game so far.
I thought the datagrid standard events, such as CellEditEnding, was it but they are not as it says "Invalid event name".
The example I copied used a MouseEnter routed event, but i don't know what else there is for me to use (except my own of course).
<Window.Triggers>
<EventTrigger RoutedEvent="my:DataGrid.MouseEnter">
<BeginStoryboard Storyboard="{StaticResource MyAnimation}"/>
</EventTrigger>
</Window.Triggers>
thanks in advance for you help
A routed event is an event registered with the WPF event system, backed by an instance of the RoutedEvent class, and processed by the WPF event system. The RoutedEvent instance, obtained from registration, is typically stored as a public static readonly member of the class that registered it.
Routed commands give you three main things on top of normal event handling: Routed command source elements (invokers) can be decoupled from command targets (handlers)—they do not need direct references to one another, as they would if they were linked by an event handler.
RoutedEventArgs is a common event data type used for base element events in UWP app using C++, C#, or Visual Basic.
The difference between a bubbling and a tunneling event is that a tunneling event will always start with a preview. In a WPF application, events are often implemented as a tunneling/bubbling pair. So, you'll have a preview MouseDown and then a MouseDown event.
Here's the list...
[0]: {FrameworkElement.RequestBringIntoView}
[1]: {FrameworkElement.SizeChanged}
[2]: {FrameworkElement.Loaded}
[3]: {FrameworkElement.Unloaded}
[4]: {ToolTipService.ToolTipOpening}
[5]: {ToolTipService.ToolTipClosing}
[6]: {ContextMenuService.ContextMenuOpening}
[7]: {ContextMenuService.ContextMenuClosing}
[8]: {Mouse.PreviewMouseDown}
[9]: {Mouse.MouseDown}
[10]: {Mouse.PreviewMouseUp}
[11]: {Mouse.MouseUp}
[12]: {UIElement.PreviewMouseLeftButtonDown}
[13]: {UIElement.MouseLeftButtonDown}
[14]: {UIElement.PreviewMouseLeftButtonUp}
[15]: {UIElement.MouseLeftButtonUp}
[16]: {UIElement.PreviewMouseRightButtonDown}
[17]: {UIElement.MouseRightButtonDown}
[18]: {UIElement.PreviewMouseRightButtonUp}
[19]: {UIElement.MouseRightButtonUp}
[20]: {Mouse.PreviewMouseMove}
[21]: {Mouse.MouseMove}
[22]: {Mouse.PreviewMouseWheel}
[23]: {Mouse.MouseWheel}
[24]: {Mouse.MouseEnter}
[25]: {Mouse.MouseLeave}
[26]: {Mouse.GotMouseCapture}
[27]: {Mouse.LostMouseCapture}
[28]: {Mouse.QueryCursor}
[29]: {Stylus.PreviewStylusDown}
[30]: {Stylus.StylusDown}
[31]: {Stylus.PreviewStylusUp}
[32]: {Stylus.StylusUp}
[33]: {Stylus.PreviewStylusMove}
[34]: {Stylus.StylusMove}
[35]: {Stylus.PreviewStylusInAirMove}
[36]: {Stylus.StylusInAirMove}
[37]: {Stylus.StylusEnter}
[38]: {Stylus.StylusLeave}
[39]: {Stylus.PreviewStylusInRange}
[40]: {Stylus.StylusInRange}
[41]: {Stylus.PreviewStylusOutOfRange}
[42]: {Stylus.StylusOutOfRange}
[43]: {Stylus.PreviewStylusSystemGesture}
[44]: {Stylus.StylusSystemGesture}
[45]: {Stylus.GotStylusCapture}
[46]: {Stylus.LostStylusCapture}
[47]: {Stylus.StylusButtonDown}
[48]: {Stylus.StylusButtonUp}
[49]: {Stylus.PreviewStylusButtonDown}
[50]: {Stylus.PreviewStylusButtonUp}
[51]: {Keyboard.PreviewKeyDown}
[52]: {Keyboard.KeyDown}
[53]: {Keyboard.PreviewKeyUp}
[54]: {Keyboard.KeyUp}
[55]: {Keyboard.PreviewGotKeyboardFocus}
[56]: {Keyboard.GotKeyboardFocus}
[57]: {Keyboard.PreviewLostKeyboardFocus}
[58]: {Keyboard.LostKeyboardFocus}
[59]: {TextCompositionManager.PreviewTextInput}
[60]: {TextCompositionManager.TextInput}
[61]: {DragDrop.PreviewQueryContinueDrag}
[62]: {DragDrop.QueryContinueDrag}
[63]: {DragDrop.PreviewGiveFeedback}
[64]: {DragDrop.GiveFeedback}
[65]: {DragDrop.PreviewDragEnter}
[66]: {DragDrop.DragEnter}
[67]: {DragDrop.PreviewDragOver}
[68]: {DragDrop.DragOver}
[69]: {DragDrop.PreviewDragLeave}
[70]: {DragDrop.DragLeave}
[71]: {DragDrop.PreviewDrop}
[72]: {DragDrop.Drop}
[73]: {Touch.PreviewTouchDown}
[74]: {Touch.TouchDown}
[75]: {Touch.PreviewTouchMove}
[76]: {Touch.TouchMove}
[77]: {Touch.PreviewTouchUp}
[78]: {Touch.TouchUp}
[79]: {Touch.GotTouchCapture}
[80]: {Touch.LostTouchCapture}
[81]: {Touch.TouchEnter}
[82]: {Touch.TouchLeave}
[83]: {FocusManager.GotFocus}
[84]: {FocusManager.LostFocus}
[85]: {ManipulationDevice.ManipulationStarting}
[86]: {ManipulationDevice.ManipulationStarted}
[87]: {ManipulationDevice.ManipulationDelta}
[88]: {ManipulationDevice.ManipulationInertiaStarting}
[89]: {ManipulationDevice.ManipulationBoundaryFeedback}
[90]: {ManipulationDevice.ManipulationCompleted}
[91]: {Control.PreviewMouseDoubleClick}
[92]: {Control.MouseDoubleClick}
[93]: {ScrollViewer.ScrollChanged}
[94]: {ScrollBar.Scroll}
[95]: {Thumb.DragStarted}
[96]: {Thumb.DragDelta}
[97]: {Thumb.DragCompleted}
[98]: {RangeBase.ValueChanged}
[99]: {TextBoxBase.TextChanged}
In your code, call static EventManager.GetRoutedEvents() method to get list of routed events registered/available to your application.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With