1.首先在控件中定义委托和事件
//声明委托,传递xy坐标
public delegate void MouseMoveDelegate(float transformedX, float transformedY);
//基于委托定义事件
public event MouseMoveDelegate MouseMovedEvent;
2.触发事件,进行数据传递
我是在鼠标移动事件中,实时传递xy坐标
3.在窗体中进行接收,并显示
private void Form1_Load(object sender, EventArgs e)
{
// 订阅控件的事件
canvas.MouseMovedEvent += MouseMovedEvent;
}
//定义委托代理的方法,也就是要最终执行的方法
private void MouseMovedEvent(float transformedX, float transformedY)
{
// 在主窗体中进行处理,更新文本框的值
textBox1.Text = transformedX.ToString();
textBox2.Text = transformedY.ToString();
}
在主窗体中
1.要编写一个方法用来接收参数,并显示在textBox上
2.订阅事件