1
1
所有wpf控件都具有线程关联性。这个
任何ui操作代码都必须在创建控件的同一线程上执行。
也就是说,我的理解是
|
2
1
首先,我要提到的是,在.net 4.0中使用dispatcher调用(它可能已经在框架更新中被修复)来实现这一点是没有问题的——然而,前面的海报所提到的是准确的,自从winforms(.doActions()和.invoke()出现以来,它就一直是一个难题。但是,在3.5中,如果在lambda中使用在codebhind中定义的方法作为目标调用,则上述方法在w/out dispatcher中确实有效:
至于原因,我真的不能告诉你细节,但我遇到了类似的问题,使用lambdas在演示者上路由事件。我想说的是使用编译表达式的引用或上下文来做一些事情-在这种情况下,它需要引用包含对象,以便知道如何委托操作(选择右边线程上的文本框文本)。我也相信gc偶尔会清理资源,这样延迟的执行就会变得一团糟(在f……中可以看到它……相信这也是我在c中出现问题的原因)。 |
Kryptonit364 · 在DataGrid中隐藏调整大小和选择列 2 年前 |
hassan Ma · 从顶部将文本插入WPF文本块 2 年前 |
Arijit · 移动画布内绘制的矩形 2 年前 |
juraj14466 · C#WPF实时图表将点渲染为图像 2 年前 |