В настоящее время у меня есть приложение (в Silverlight), использующее mv-vm, которое имеет интерфейс для добавления / редактирования / удаления различных записей в базе данных. Хорошей аналогией была бы страница для заказа автомобиля со множеством флажков и комбинированных списков для любых функций, которые вы хотели, чтобы автомобиль включал.
Мое приложение имеет множество таких элементов пользовательского интерфейса (даже в том числе TreeViews с TreeViewItemCheckBox'es), которые я хочу сопоставить с объектом данных, использующим словарь для хранения любых включенных параметров.
Моя задача - найти лучший способ сопоставить эти элементы пользовательского интерфейса с моей моделью представления, чтобы их можно было скомпилировать и отправить в базу данных. Моим первоначальным указанием было сопоставить каждый элемент со свойством в моей модели представления, но оно кажется тяжелым и неуклюжим.
<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, и вы получите идею.
Кто-нибудь может придумать лучший способ сделать это?
Спасибо!