【发布时间】:2009-12-02 19:03:42
【问题描述】:
我目前有一个使用 mv-vm 的应用程序(在 Silverlight 中),它具有向数据库添加/编辑/删除各种条目的界面。一个很好的类比是一个用于订购汽车的页面,该页面包含许多复选框和组合框,用于您希望汽车包含的任何功能。
我的应用有许多这样的 UI 元素(甚至包括带有 TreeViewItemCheckBox 的 TreeView),我想将它们映射到使用字典存储任何包含选项的数据对象。
我的困难是找到将这些 UI 元素映射到我的视图模型的最佳方法,以便可以将它们编译并发送到数据库。我最初的方向是将每个元素映射到我的视图模型中的一个属性,但它看起来很笨重。
<TreeView>
<TreeViewItem>
<TreeViewItem.Header>
<TreeViewItemCheckBox Content="All Features" IsChecked="{Binding AllFeaturesChecked}"/>
</TreeViewItem.Header>
<TreeViewItemCheckBox Content="Feature1" IsChecked="{Binding Feature1Checked}"/>
<TreeViewItemCheckBox Content="Feature2" IsChecked="{Binding Feature2Checked}"/>
<TreeViewItemCheckBox Content="Feature3" IsChecked="{Binding Feature3Checked}"/>
<TreeViewItemCheckBox Content="Feature4" IsChecked="{Binding Feature4Checked}"/>
</TreeViewItem>
</TreeView>
...乘以 10 你就明白了。
有人能想出更好的方法吗?
谢谢!
【问题讨论】:
标签: silverlight xaml mvvm user-interface