如何:使对象跟随鼠标指针移动
.NET Framework 4
此示例演示当鼠标指针在屏幕上移动时如何更改对象的维度值。
此示例包括一个用来创建user interface (UI) 的Extensible Application Markup Language (XAML) 文件和一个用来创建事件处理程序的代码隐藏文件。
下面的 XAML 创建了 UI(它在 StackPanel 内包括了一个 Ellipse),并附加了 MouseMove 事件的事件处理程序。
<Window x:Class="WCSamples.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="mouseMoveWithPointer" Height="400" Width="500" > <Canvas MouseMove="MouseMoveHandler" Background="LemonChiffon"> <Ellipse Name="ellipse" Fill="LightBlue" Width="100" Height="100"/> </Canvas> </Window>
下面的隐藏代码创建 MouseMove 事件处理程序。 当鼠标指针移动时,Ellipse 的高度和宽度随之进行增加和减少。
// 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; }

浙公网安备 33010602011771号