2024年4月16日发(作者:)

C# 实现鼠标框选效果

实现步骤:

1.实现整个鼠标框选的几个事件(down、move、up),当鼠标点下记

录鼠标框选的起点,鼠标抬起结束操作。

2.以鼠标框选过程中获取的鼠标坐标为基点计算框选的矩形的4点坐

标,4点坐标以顺时针方向布点。

3.通过类实现在类上画出此矩形。

代码如下:

namespace HostDemo {

public class HostCanvas : Canvas {

public HostCanvas() {

InitializeComponent();

}

private void InitializeComponent() {

+= OnLoad;

own += OnMouseDown;

ove += OnMouseMove;

p += OnMouseUp;

locus = new Path();

= new SolidColorBrush(gb(1, 255,

255, 255));

= ;

Thickness = 1;

pulationEnabled = true;

}

void OnMouseUp(object sender,

uttonEventArgs e) {

ispath = false;

}

void OnMouseMove(object sender,

ventArgs e) {

if(ispath){

endpoint = ition(this);

= DrawingRect(startpoint,endpoint);

}

}

void OnMouseDown(object sender,

uttonEventArgs e) {

if(!ns(locus)) (locus);

if ( != null) = null;

startpoint = ition(this);