我有一个带有开始和取消按钮的窗体。
开始按钮执行以下操作:
bootLoader = new BootLoader(this, _form1);
bootloader.Start();
现在,当用户单击开始按钮时,BootLoader类将数据写入COM端口。
我想知道的是,当用户点击取消按钮时,如何停止此操作的完成。
目前我只有以下内容:
this.Close();
但它只是关闭表单,数据继续写入com端口。
答案 0 :(得分:1)
使用可取消的BackgroundWorker?
var bw = new BackgroundWorkder();
bw.WorkerSupportsCancellation = true;
然后在您的DoWork
工作人员功能中,您需要监控CancellationPending
标志,该标志在您致电bw.CancelAsync()
后将变为真。