Skip to main content
.NET Framework Class Library
UIElementMouseMove Event

Occurs when the mouse pointer moves while over this element.

Namespace:   System.Windows
Assembly:  PresentationCore (in PresentationCore.dll)
Public Event MouseMove As [%$TOPIC/ms596682_en-us_VS_110_1_0_0_0_0%]
public event [%$TOPIC/ms596682_en-us_VS_110_1_0_1_0_0%] MouseMove
virtual   event [%$TOPIC/ms596682_en-us_VS_110_1_0_2_0_0%]^ MouseMove {
	void add ([%$TOPIC/ms596682_en-us_VS_110_1_0_2_0_1%]^ value);
	void remove ([%$TOPIC/ms596682_en-us_VS_110_1_0_2_0_2%]^ value);
abstract MouseMove : IEvent<[%$TOPIC/ms596682_en-us_VS_110_1_0_3_0_0%],
override MouseMove : IEvent<[%$TOPIC/ms596682_en-us_VS_110_1_0_3_0_2%],
<object MouseMove="[%$TOPIC/ms596682_en-us_VS_110_1_0_4_0_0%]" .../>


Routed Event Information

Identifier field


Routing strategy





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


This example shows how to change the dimensions of an object when the mouse pointer moves on the screen.

The example includes an Extensible Application Markup Language (XAML) file that creates the user interface (UI) and a code-behind file that creates the event handler.

The following XAML creates the UI, which consists of an  Ellipse inside of a StackPanel, and attaches the event handler for the MouseMove event.

<Window x:Class="WCSamples.Window1"
  <Canvas MouseMove="MouseMoveHandler"
    <Ellipse Name="ellipse" Fill="LightBlue" 
             Width="100" Height="100"/>

The following code behind creates the MouseMove event handler. When the mouse pointer moves, the height and the width of the Ellipse are increased and decreased.

' raised when the mouse pointer moves. 
' Expands the dimensions of an Ellipse when the mouse moves. 
Private Sub OnMouseMoveHandler(ByVal sender As Object, ByVal e As MouseEventArgs)

    'Get the x and y coordinates of the mouse pointer. 
    Dim position As System.Windows.Point
    position = e.GetPosition(Me)
    Dim pX As Double
    pX = position.X
    Dim pY As Double
    pY = position.Y

    'Set the Height and Width of the Ellipse to the mouse coordinates.
    ellipse1.Height = pY
    ellipse1.Width = pX
End Sub
// raised when the mouse pointer moves. 
// Expands the dimensions of an Ellipse when the mouse moves. 
private void MouseMoveHandler(object sender, MouseEventArgs e)
    // Get the x and y coordinates of the mouse pointer.
    System.Windows.Point position = e.GetPosition(this);
    double pX = position.X;
    double pY = position.Y;

    // Sets the Height/Width of the circle to the mouse coordinates.
    ellipse.Width = pX;
    ellipse.Height = pY;
Version Information

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.