【发布时间】:2012-09-10 10:48:37
【问题描述】:
我对 MVVM 比较陌生,我了解 MVVM 相对于 xaml 背后的简单代码的一些好处(例如 VM 的可测试性)。我们正在使用 Caliburn Micro 来执行一些绑定,但这有点无关紧要,我可以使用特定绑定 {binding ...} 我的问题或多或少会保持不变。
我理解如果一切都正确完成,VM 应该不知道 V 的逻辑,但似乎因为我们在 V 和 VM 之间使用动态运行时绑定,编译器无法检查合法性每个绑定表达式。例如,如果我有一个名为 UserName 的 UI 组件,则 Caliburn 将尝试在运行时将其绑定到名为 UserName 的 VM 属性(类似于执行 Value="{binding UserName}" 之类的操作)。但是,如果我重命名我的 VM 属性或拼错 UI 组件名称或绑定表达式,在运行时之前我们不会得到任何问题的指示。
在我看来,能够告诉 xaml 一个 UI 组件或页面将绑定到一个特定的界面,这样编译器就可以完成一些原本必须要做的工作,这真是太好了。由测试部门完成(和重做)(我经常这样做)。
有没有办法告诉 xaml 我们正在绑定到接口或对象类型?是否有一些工具可以插入 xaml 应用程序以验证绑定?
【问题讨论】:
标签: wpf silverlight xaml mvvm binding