在使用 MVVM 模式构建 WPF 应用程序时,我对放置依赖属性的位置感到困惑。它进入模型还是视图模型?
编辑
在查看了早期答案(感谢那些)之后,我发现我仍然很困惑,所以我提供了更多细节来帮助有人向我解释这一点。
我有一堂课叫车站。测量员和土木工程师使用它来表示道路的长度。在大多数情况下,Station 只是一个替身,但它有一些装饰。首先,格式不同。当距离大于 100 英尺时,我们添加一个 + 符号作为另一种格式化方式。因此,在道路下方 1234.56 英尺处,我们可能会有 12+34.56 站。(我将跳过其他装饰,因为这对我的观点来说已经足够好了。)
因此,特殊格式的逻辑存在于模型中的一个类 Station 中。我希望视图中的 TextBox 接受用户输入 1234.56 并将其强制为“12+34.56”的文本值。所以我想要一个 TextBox 让用户访问模型中的一个值,所以它需要是一个依赖属性。(这是正确的,不是吗?)但是用于强制/解析/理解如何在 TextBox 和 Station 之间来回切换的业务逻辑应该存在于 Station 类中。(正确的?)
此外,我稍后希望让用户能够通过单击道路图形来设置站点值,包括在鼠标移动时动态更新值以及在发布数据点时锁定值。(现在你明白我为什么试图保持简短。)
那么这不是我想要创建一个依赖属性的东西,尤其是动态数据点可能稍后会涉及吗?如果没有,我如何使用 MVVM 将文本框项连接到工作站?(在问我的问题之前,我真的对此进行了很多研究,但没有成功。)
- 保罗