![]() |
1
9
我也相信这个实现是有缺陷的
因为它肯定会泄漏对事件处理程序的弱引用。这实际上是非常糟糕的事情。
但是,如果我这样改变它,它将工作:
唯一的区别?如文件所示
|
![]() |
2
44
我在乔希的书里找到了答案 comment 论他的“ Understanding Routed Commands “文章:
理由似乎是
|
![]() |
3
7
根据Reflector的说法,它的实现方式与
|
![]() |
4
5
我相信它有缺陷。 通过将事件重新路由到commandmanager,可以获得以下行为
但是,当您希望通知绑定到单个命令的所有控件以重新评估canexecute状态时会发生什么?在他的实现中,您必须转到commandmanager,这意味着 应用程序中的每个命令绑定都将重新评估 这包括所有那些并不重要的bean,那些评估canexecute有副作用的(比如数据库访问或长时间运行的任务),那些等待收集的……就像用大锤敲碎一颗易碎的钉子。 你必须认真考虑这样做的后果。 |
![]() |
5
0
我可能遗漏了这一点,但下面的内容是否构成了对Contractor中事件处理程序的有力引用?
|
![]() |
Xsayar · 如何将两个命令绑定到WPF按钮? 7 年前 |
![]() |
Mark Denom · 我的数据绑定是如何写出长度属性的? 7 年前 |
![]() |
Dev · 如何更新绑定到UI的集合? 7 年前 |
![]() |
Detlef D Soost · 多重绑定未设置值 7 年前 |
![]() |
Jack Guo · 在MVVM中清除集合视图的正确方法 7 年前 |