![]() |
1
35
为了简化Simon的代码,可以使用内置的通用操作委托。这样可以避免在代码中添加一些并不需要的委托类型。此外,在.NET3.5中,他们向Invoke方法添加了一个params参数,因此您不必定义临时数组。
|
![]() |
2
18
以下是要点:
因此,如果您有一个单独的“引擎”线程做一些工作,并且有一些UI监视可以反映在UI中的状态更改(例如进度条或其他什么),那么您就有问题了。引擎火灾是一个对象更改事件,已被窗体钩住。但是向引擎注册的窗体在引擎的线程上而不是在窗体的线程上被调用的回调委托。因此,您无法从该回调更新任何控件。啊! 异步调用 来营救。只要在所有回调方法中使用这个简单的编码模型,就可以确保一切都会好起来:
其实很简单。
|
![]() |
3
9
在这种情况下,我经常使用匿名方法:
|
![]() |
4
2
这个话题我有点晚了,但是你可能想看看 Event-Based Asynchronous Pattern . 当正确实现时,它保证总是从UI线程引发事件。
|
![]() |
5
2
作为
我所做的就是这样。
|
![]() |
6
0
在许多简单的情况下,您可以使用MethodInvoker委托,而无需创建自己的委托类型。 |
![]() |
GoTouchGrass · 右键单击按钮不会触发事件 10 月前 |
![]() |
NEWBIE · 无法在winform中设置变量 11 月前 |
![]() |
Farrow · 我无法使字符串正确显示 1 年前 |
|
IDNKEK · 在Visual Studio中绘制图表时出现问题 1 年前 |