Freigeben über


Vorgehensweise: Ein Objekt dem Mauszeiger folgen lassen

In diesem Beispiel wird gezeigt, wie Die Abmessungen eines Objekts geändert werden, wenn der Mauszeiger auf dem Bildschirm bewegt wird.

Das Beispiel umfasst eine XAML-Datei (Extensible Application Markup Language), die die Benutzeroberfläche (UI) erstellt, sowie eine Code-Behind-Datei, die den Ereignishandler erstellt.

Beispiel

Das folgende XAML erstellt die Benutzeroberfläche, die aus einer Ellipse innerhalb eines StackPanel besteht, und fügt den Ereignishandler für das Ereignis MouseMove hinzu.

<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>

Der folgende CodeBehind-Code erstellt den MouseMove-Ereignishandler. Wenn der Mauszeiger bewegt wird, werden Höhe und Breite von Ellipse vergrößert und verkleinert.

// 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;
}
' 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

Siehe auch