У меня проблема с моим ListBox
Я установил режим выбора ListBox на несколько
Проблема в том, что выбранный элемент срабатывает только один раз, и когда я выбираю другие элементы, он не меняет SelectedItem в модели представления.
Я уверен, что его выбор их, потому что я привязываю свойство к true, когда они выбраны, но выбранный элемент не обновляется.
Например:
Допустим, у меня есть ListBox со следующим:
В
С
Выберите A -> ViewModel обновить выбранный элемент до A
Выберите B -> ViewModel не обновляет SelectedItem, но я вижу, что B выбран
Когда я отменяю выбор A, ViewModel обновляет SelectedItem до нуля
Кто-то уже сталкивался с этой проблемой?
Моя главная цель - сохранить обновление SelectedItem до выбранного мной
Он мой код для просмотра:
<ListBox HorizontalAlignment="Center" ItemsSource="{Binding AvailableDagrVMEs}"
SelectedItem="{Binding SelectedDagrVME}"
SelectionMode="Multiple"
VirtualizingStackPanel.IsVirtualizing="False"
ScrollViewer.HorizontalScrollBarVisibility="Auto" Padding="0" Margin="0" ScrollViewer.VerticalScrollBarVisibility="Hidden" ScrollViewer.PanningMode="HorizontalOnly"
Background="Transparent"
BorderThickness="0">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="1"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="IsSelected" Value="{Binding Taken, Mode=TwoWay}"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<DockPanel>
<Image Source="{Binding Icon , Converter={StaticResource BitmapToImageSourceConverter}}"/>
</DockPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
И ViewModel:
public BaseVME SelectedDagrVME
{
get { return selectedDagrVME; }
set
{
if (selectedDagrVME != value)
{
Set("SelectedDagrVME", ref selectedDagrVME, value);
}
}
}
Я пробовал: двухстороннее связывание / UpdateTriggerSource