有没有办法暂时禁用 Windows 窗体上的所有事件?
我的情况是辅助线程上的处理被主线程上的事件破坏。 (主线程事件正在修改数据绑定(bind)到辅助线程使用的变量的控件的内容。)寻找一种“锁定”表单的方法,直到辅助线程上的处理完成。 (显然,将处理移到主线程会做到这一点——但它也会“卡住”用户界面,这也不是我想要的。)
最佳答案
一些不同的选项应该可以让您解决这个问题:
我会选择第一个选项,可能还会将光标设置为沙漏和/或在状态栏中设置一条消息。这很简单,它可以工作,并且不会导致实际的 UI 卡住。我会避免使用第三个选项,因为它会在表单工作时“破坏”表单的行为。第二个选项的效果取决于你如何实现它;它可以很容易地卡住用户界面,这是你不想做的事情..
关于.net - 禁用 Windows 窗体上的所有事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3841020/