我正在使用MVVM模式构建WPF应用程序。 我有两个条形(矩形),应根据两个数字之间的比例改变它们的长度。例如,如果我确定总长度为100,并且一个数字是2而另一个数字是3,我希望第一个条的长度为40,第二个条的长度为60。
我将这些数字保存为我的ViewModel中的属性,但我的问题是条形宽度属性应该绑定到什么。 我可以为ViewModel添加另外两个属性,每个条宽度一个,但感觉不对,因为这是视图特有的。
有什么建议吗?
谢谢,
半乳糖
答案 0 :(得分:3)
特定于视图的属性应保留在视图中。 MVVM(或任何MV *模式)的想法是将视图与业务逻辑分开。一个常见的误解是认为你不能在视图中拥有任何逻辑或属性。虽然您应该最小化它们,但纯视图特定的属性应该存在于视图中。
想象一下,您想要使用具有不同视图的视图模型,例如针对移动设备的视图。条形图的最大宽度可能不同,但您的视图模型不应该关心它。
希望有所帮助