MousePosition Property
Collapse the table of content
Expand the table of content

Control::MousePosition Property


Gets the position of the mouse cursor in screen coordinates.

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

property Point MousePosition {
	static Point get();

Property Value

Type: System.Drawing::Point

A Point that contains the coordinates of the mouse cursor relative to the upper-left corner of the screen.

The MousePosition property returns a Point that represents the mouse cursor position at the time the property was referenced. The coordinates indicate the position on the screen, not relative to the control, and are returned regardless of whether the cursor is positioned over the control. The coordinates of the upper-left corner of the screen are 0,0.

The MousePosition property is identical to the Cursor::Position property.

The following code example puts a TreeNode label into an editable state when the user presses ALT+E while the mouse cursor is over the tree node. After the user is done editing the label, the labels cannot be edited again until the ALT+E key combination is pressed again. This example requires that you have a TreeView on a Form. The tree view should also have at least one TreeNode in its Nodes collection.

   void treeView1_KeyDown( Object^ /*sender*/, KeyEventArgs^ e )
      /* If the 'Alt' and 'E' keys are pressed,
         * allow the user to edit the TreeNode label. */
      if ( e->Alt && e->KeyCode == Keys::E )
         treeView1->LabelEdit = true;

         // If there is a TreeNode under the mose cursor, begin editing.
         TreeNode^ editNode = treeView1->GetNodeAt( treeView1->PointToClient( Control::MousePosition ) );
         if ( editNode != nullptr )

   void treeView1_AfterLabelEdit( Object^ /*sender*/, NodeLabelEditEventArgs^ /*e*/ )
      // Disable the ability to edit the TreeNode labels.
      treeView1->LabelEdit = false;

.NET Framework
Available since 1.1
Return to top
© 2016 Microsoft