【发布时间】:2014-02-13 19:37:50
【问题描述】:
我的表单包含不同类型的控件,例如文本框、下拉菜单、复选框、单选按钮等。所有这些控件都是在运行时从数据库中动态加载的。
我想根据条件对文本框进行验证。例如,如果我们在下拉列表中选择了任何值,那么您必须在文本框中填写详细信息。否则不需要文本框详细信息。
我愿意使用数据库来执行此任务,并且我在我的项目中使用 MVVM 模式。
非常感谢您对此的任何帮助。
谢谢。
【问题讨论】:
-
您的 ViewModel 中是否有任何属性来表示这些控件中选定\输入的值?
-
不,我在 ViewModel 中没有选定控件的任何属性,但可以从页面上呈现的所有控件的集合中获取值。
-
如果你想坚持 MVVM 原则,你可能应该在你的 ViewModel 中有一些东西来代表所有控件的所有值,这样你就可以根据这些值编写一些逻辑来禁用\启用某些控件。你是如何加载和实例化它们的?
-
@fayilt:我正在从数据库加载控件并实例化它们。我的数据库保存控件数据类型和变量的值。然后将这些控件作为子元素添加到与我的视图绑定的 usercontrol 属性之一中。
-
那么您的 ViewModel 上有一个 UserControls 属性?还是在别处声明?
标签: c# wpf silverlight mvvm