【发布时间】:2010-03-22 20:43:39
【问题描述】:
我在 MVVM 应用程序中遇到了命令问题(我只是在学习 MVVM,所以要轻松一点)。
Valid XHTML http://www.hughgrice.com/mvvmproblem.png
MyClassViewModel 设置为 MainForm1 的数据上下文,MyList 绑定到 UserControl1 数据上下文,并且列表中的每个项目由 UserControl2 表示。我正在尝试使用以下命令在 UserControl2 中触发 MyCommand:
<CheckBox IsChecked="{Binding MyBool}" Command="{Binding Path=MyCommand}" CommandParameter="{Binding}">
我在输出中收到以下错误:
System.Windows.Data Error: 39 : BindingExpression path error: 'MyCommand' property not found on 'object' ''MyObject''
从这个错误中我知道 WPF 正在寻找绑定到 UserControl2 的对象中的命令,我真正需要的是它在 MainForm1 数据上下文 (MyClassViewModel) 中寻找命令。
是否可以冒泡这样的命令,如果可以,它是如何完成的?
冒泡命令是一个好的解决方案吗?
【问题讨论】: