返回> 网站首页
C#的委托使用
yoours2017-12-15 15:00:32
简介一边听听音乐,一边写写文章。
一、多线程中操作控件
private delegate bool ButtonEnableDelegate(bool bEnable);
public bool EnableButton(bool bEnable)
{
if (this.button2.InvokeRequired)
{
ButtonEnableDelegate method = new ButtonEnableDelegate(this.EnableButton);
IAsyncResult ir=base.BeginInvoke(method, new object[] { bEnable });
base.EndInvoke(ir);// 等待操作完成才返回,可以删除改成立即返回
return false;
}
this.button2.Enabled = bEnable;
return true;
}
二、按钮单击事件委托
// 按钮单击事件
private void btnstart_Click(object sender, EventArgs e)
{
}
// 简单封装
void StartButton()
{
btnstart_Click(null, null);
}
// 委托方法
delegate void AutoStopReaderHandler();
// 调用
this.BeginInvoke(new AutoStopReaderHandler(StartFixTimesRead));
文章评论
2126人参与,0条评论