WPF - 是否应为用户控件提供 ViewModel

标签 wpf model-view-controller user-controls viewmodel

我将使用由不同团队(在同一家公司)开发的用户控件,对于我们正在开发的应用,我们试图在 XAML 中描述所有数据绑定(bind)。

现在,如果我使用第三方用户控件,我应该期望他们为我的代码提供带有钩子(Hook)的基本 ViewModel,还是应该编写代码将用户控件绑定(bind)到我选择的 ViewModel?

干杯

AWC

最佳答案

这取决于用户控件的范围。如果它特定于应用程序并且不太可能在其他地方有用,那么是的,可能应该提供公共(public) ViewModel。

但是,公共(public) ViewModel 在希望控件可重用的情况下可能用处不大。 控件可以在内部使用 ViewModel,但这应该保密。然后宿主应用程序以类似于任何其他 WPF 控件的方式使用该控件,并创建它自己的 View 模型以将控件绑定(bind)到应用程序。

从本质上讲,ViewModel 通常是特定于应用程序的 - 它是专门针对该应用程序的需求量身定制的。而通用控件公开允许它们在任何应用程序中使用的属性和事件。

关于WPF - 是否应为用户控件提供 ViewModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1939414/

相关文章:

javascript - Rails 将数据从 Controller 传递到 javascript

wpf - 具有依赖属性的 UserControl 以替换重复的类似控件集

c# - WPF RichTextBox 第一行\n 未打印

C# WPF - 只允许某些文件扩展名

ruby-on-rails-3 - Rails 3 - 通过 rspec 正确测试 PUT 方法

java - 如何在 spring mvc 中的 Action 之前发送响应

mysql - vb.net中搜索程序的Sql查询

WPF - 使用用户控件并设置设计时高度和宽度

c# - 在 WPF 的代码隐藏中更改字体样式

wpf TreeView 绑定(bind)