点击取消 退出正在运行的程序

liuzhenpolestar 2011-11-30 08:01:01
假设一个对话框窗体上有两个按钮,一个“确定”按钮,用于执行一个方法,一个取消按钮,用于关闭窗体(this.close()),但当我点击确定后,想取消方法的执行,发现 点击取消按钮后程序就会立即死掉 ,我该怎么做才能在点击取消时能禁止方法的运行呢?(我用的是单线程 ,因为那个方法智能支持单线程)。
...全文
143 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuzhenpolestar 2012-02-22
  • 打赏
  • 举报
回复
是啊 我用ArcEngine时,有时只能用单线程!
宝_爸 2011-12-01
  • 打赏
  • 举报
回复
"我用的是单线程 ,因为那个方法智能支持单线程"

没有办法了,只能等确定执行完了,这就是单线程。
TNight 2011-12-01
  • 打赏
  • 举报
回复
确实,单线程的话或者是你他点击确定后的几秒钟内不让他点击...
Bullatus 2011-12-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jetable 的回复:]

应该是你确定按钮所执行的方法没有完成,造成等待。应该给这个耗时的方法单独开线程,点击取消按钮时,执行线程的abort事件
[/Quote]
单线程的话,在方法没完成时一定会卡死界面的,不只是点取消按钮,点任何一个地方都会无响应。
如果一个方法十分耗时,还要保证执行时界面可以响应,应该将其放入非UI线程中执行
jetable 2011-11-30
  • 打赏
  • 举报
回复
应该是你确定按钮所执行的方法没有完成,造成等待。应该给这个耗时的方法单独开线程,点击取消按钮时,执行线程的abort事件

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧