Я создаю инструмент для одновременного редактирования нескольких объектов базы данных, и мне любопытно узнать мнение ваших ребят о схеме выделения.
В моем ViewModel
у меня есть коллекция Juris
изJurisdictions
, которые связаны с ЛЮБЫМИ элементами, выбранными пользователем для редактирования.У меня также есть подгруппа юрисдикций, которыми поделились ВСЕ выбранные пункты, «CommonJuris».У меня такой вопрос: существует ли простой способ, которым я могу заполнить ListBox
полной коллекцией и выделить элементы, которые есть в под-коллекции?
В данный момент у меня есть свойство bool, IsCommon
, в моемJurisdiction Model
.Я действительно не хочу этого в Model
, но лучшего решения пока не нашел.Jurisdiction
не имеет ViewModel
, так как это будет единственное в нем.
Вот мой XAML для самого ListBox:
<ListBox Grid.Row="1" Grid.Column="2" ItemContainerStyle="{StaticResource JuriAndTT}"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
HorizontalContentAlignment="Stretch"
ItemsSource="{Binding Juris}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
И стиль:
<Style TargetType="{x:Type ListBoxItem}" x:Key="JuriAndTT">
<Style.Triggers>
<DataTrigger Binding="{Binding IsCommon}" Value="True">
<Setter Property="Background" Value="PowderBlue"/>
<Setter Property="Foreground" Value="Black"/>
</DataTrigger>
</Style.Triggers>
</Style>