Быстрый вопрос...
У меня есть ListBox
с его ItemsSource
свойством, привязанным к свойству коллекции в модели представления следующим образом:
<ListBox Name="CollectionsListBox" ItemsSource="{Binding Activity.Timesheets}" />
У меня также есть два Button
объекта в том же представлении. Вопрос в том, могу ли я изменить CollectionsListBox
ItemsSource Binding
с Activity.Timesheets
на Activity.Attachments
, используя только XAML?
Если нет, то из вью-модели, используя объекты Command?
EDIT >>>
Я нашел простое решение, используя RadioButton
s вместо Button
s из части ответа Говарда:
<ListBox Name="CollectionsListBox">
<ListBox.Style>
<Style>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=TimesheetsButton,Path=IsChecked}" Value="True">
<Setter Property="ListBox.ItemsSource" Value="{Binding Activity.Timesheets}" />
<Setter Property="ListBox.ItemContainerStyle" Value="{StaticResource TimesheetStyle}" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=AttachmentsButton,Path=IsChecked}" Value="True">
<Setter Property="ListBox.ItemsSource" Value="{Binding Activity.Attachments}" />
<Setter Property="ListBox.ItemContainerStyle" Value="{StaticResource AttachmentStyle}" />
</DataTrigger>
</Style.Triggers>
</Style>
</ListBox.Style>
</ListBox>
Большое спасибо за помощь.