Mega Code Archive

 
Categories / C# / WPF
 

Mouse Position

<Grid    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"   xmlns:d="http://schemas.microsoft.com/expression/interactivedesigner/2006"   mc:Ignorable="d"   x:Class="InputExamples.MousePosition"    Width="640" Height="480">   <Label d:LayoutOverrides="Height" x:Name="firstCoordinates"/>   <Rectangle Stroke="#FF000000" Fill="#FFFFFFFF" x:Name="Rectangle"/>   <Ellipse Stroke="#FF000000" Fill="#FFFFFFFF" x:Name="secondEllipse"/>   <Ellipse d:LayoutOverrides="Height" Stroke="#FF000000" Width="14" Height="14" x:Name="firstEllipse"/>   <Ellipse d:LayoutOverrides="Width" Stroke="#FF000000" Width="14" Height="14" x:Name="fourthEllipse"/>   <Ellipse d:LayoutOverrides="Width" Stroke="#FF000000" Width="14" Height="14" x:Name="thirdEllipse"/>   <Label d:LayoutOverrides="Width, Height" Width="66" Height="22" x:Name="secondCoordinates"/>   <Label d:LayoutOverrides="Width, Height" Width="66" Height="22" x:Name="thirdCoordinates"/>   <Label d:LayoutOverrides="Width, Height" Width="66" Height="22" x:Name="fourthCoordinates"/>   <Ellipse Fill="Red" Width="16" Height="16" x:Name="DragEllipse"/> </Grid> //File:Window.xaml.cs using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Navigation; using System.Windows.Shapes; namespace InputExamples {   public partial class MousePosition   {     private TranslateTransform ellipseTransform = new TranslateTransform();          public MousePosition()     {       this.InitializeComponent();     }          protected override void OnInitialized(EventArgs e)     {       base.OnInitialized(e);              DragEllipse.RenderTransform = ellipseTransform;       CompositionTarget.Rendering += this.CompositionTarget_Rendering;     }     private void CompositionTarget_Rendering(object sender, EventArgs e)     {           Point mouse1 = Mouse.GetPosition(firstEllipse);           Point mouse2 = Mouse.GetPosition(secondEllipse);           Point mouse3 = Mouse.GetPosition(thirdEllipse);           Point mouse4 = Mouse.GetPosition(fourthEllipse);                      firstCoordinates.Content = mouse1.ToString();           secondCoordinates.Content = mouse2.ToString();           thirdCoordinates.Content = mouse3.ToString();           fourthCoordinates.Content = mouse4.ToString();                  Point position = Mouse.GetPosition(DragEllipse);           ellipseTransform.X += position.X - (DragEllipse.Width / 2);           ellipseTransform.Y += position.Y - (DragEllipse.Height / 2);     }   } }