【发布时间】:2010-10-30 04:07:11
【问题描述】:
我正在一个简单的 WPF 应用程序的上下文中试验 MVVM。我有一个附加到按钮的命令。如果 TextBox 中的文本“不正确”,我希望 TextBox 获得焦点并选择它的所有内容。似乎做到这一点的唯一方法是通过从我的 ViewModel 中的 Command 直接调用 View,或者设置 ViewModel 触发和 View 侦听的某种 Event。从那里,视图可以直接调用相关的 TextBox。
我试图保持 MVVM 的解耦特性,但似乎我无法在 XAML 中以声明方式或直接在 ViewModel 中的代码中获得这种行为,而无需至少间接与 View 对话(无论是接口或事件)。我还必须在 ViewModel 中保留对 View 的引用。
这里什么被认为是“最佳实践”,以及在“真实”MVVM 应用程序中视图与视图模型的解耦程度如何?
【问题讨论】: