C# / Récupérer la position de la souris

Voici un petit code vous permettant de récupérer très facilement la position de la souris dans votre application.

Dans un premier temps, il faut s’abonner à l’évènement MouseMove, soit de l’objet survolé (ex: Button, Picture, Label, Grid….), soit du UserControl pour toute la fenêtre.

Dans un seconde temps, on instancie un objet Point qui contiendra les coordonnées X et Y de la souris.
Ensuite, on utilise la méthode GetPosition() qui prend en paramètre le nom d’un élément graphique (ex: Button, Picture, Label, Grid….) qui sert de référence pour le calcul des coordonnées.

Et pour finir, on écrit les coordonnées dans 2 labels nommés labelX et labelY la position de la souris.

private void UserControl_MouseMove(object sender, MouseEventArgs e)
{
     Point point = new Point();
     point = e.GetPosition(LayoutRoot);

     labelX.Content = point.X.ToString(); // 1er label
     labelY.Content = point.Y.ToString(); // 2e label
}

Lien Permanent pour cet article : https://www.jbvigneron.fr/parlons-dev/csharp/csharp-racuperer-la-position-de-la-souris/

1 Commentaire

  1. Hello,

    Ce qui est dommage par contre c’est que bien que cela soit le même nom pour les évènements touchs, il n’y a pas d’interface commune pour récupérer la position du pointeur (souris, doigts, etc…)… Du coup difficile de factoriser certaines fois,

    Bonne continuation !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Verified by MonsterInsights