MouseEnter Event
Collapse the table of content
Expand the table of content

UIElement.MouseEnter Event


Occurs when the mouse pointer enters the bounds of this element.

Namespace:   System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)

abstract MouseEnter : IEvent<MouseEventHandler,
override MouseEnter : IEvent<MouseEventHandler,

MouseEnter is a that uses the direct event handling routing strategy. Direct routed events are not raised along a route; instead, they are handled in the same element where they are raised. However, they do enable other aspects of routed event behavior, such as event triggers in styles.

Although MouseEnter tracks when the mouse pointer enters the bounds of an element, this event more literally reports that the IsMouseOver property value has changed from false to true on this element.

This event creates an alias for the Mouse.MouseEnter attached event for this class, so that MouseEnter is part of the class members list when UIElement is inherited as a base element. Event handlers that are attached to the MouseEnter event are attached to the underlying Mouse.MouseEnter attached event and receive the same event data instance.

A Button (or any ButtonBase derived class) has native handling for a KeyDown event when the button has focus, and the pressed key is the space bar. The native handling raises the Click event with the button as the source, and also captures the mouse, even though the mouse pointer does not appear to move. As a result of the mouse capture, a MouseEnter event is also raised with the button as the source. In general, if an element captures the mouse, then MouseEnter is raised, as well as GotMouseCapture and possibly other control-specific events.

Identifier field


Routing strategy




  • Override OnMouseEnter to implement class handling for this event in derived classes.

.NET Framework
Available since 3.0
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
© 2015 Microsoft