Behandeln Sie Mousemove, Mousedown, Mausup -Ereignisse in einer Listansicht, um eine randlose Form zu ziehenC#

Ein Treffpunkt für C#-Programmierer
Guest
 Behandeln Sie Mousemove, Mousedown, Mausup -Ereignisse in einer Listansicht, um eine randlose Form zu ziehen

Post by Guest »

Ich verwende Mousemove , mauseup , MouseDown Ereignisse, um eine randlose Form zu verschieben (wie hier als Beispiel gefunden).
Es funktioniert großartig, aber für eine ListView funktioniert es nur, wenn ich auf einen Element (seinen Text) in der Liste klicke. Es funktioniert nicht, wenn ich in den Speicherplatz der Listansicht klicke, die keine Elemente enthält. < /P>
Gibt es einen möglichen Weg, dies zu beheben?

Code: Select all

private bool mouseDown;
private Point lastLocation;

private void ListView1_MouseDown(object sender, MouseEventArgs e)
{
mouseDown = true;
lastLocation = e.Location;
}

private void ListView1_MouseMove(object sender, MouseEventArgs e)
{
if(mouseDown)
{
this.Location = new Point(
(this.Location.X - lastLocation.X) + e.X, (this.Location.Y - lastLocation.Y) + e.Y);

this.Update();
}
}

private void ListView1_MouseUp(object sender, MouseEventArgs e)
{
mouseDown = false;
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post