Я пытаюсь работать с сеткой данных, используя шаблон MVVM.Проблема заключается в том, что всякий раз, когда я изменяю свойство VM, которое привязано к SelectedItem, на null, представление не отменяет выбор текущего выбранного элемента.Это моя привязка в xaml:
<DataGrid Grid.Column="0" Grid.Row="0"
ItemsSource="{Binding Path=Users}"
AutoGenerateColumns="False"
CanUserAddRows="False"
IsReadOnly="True"
SelectedItem="{Binding Path=SelectedUser, Mode=TwoWay}">
Привязка SelectedItem работает от представления к виртуальной машине, поэтому в свойстве SelectedUser у меня всегда есть выбранный объект.Проблема в том, что в виртуальной машине я делаю некоторые вещи, которые иногда изменяют свойство SelectedUser на null, поэтому я ожидаю, что сетка данных также отменит выбор строки.Вместо этого он остается выбранным, и если я пытаюсь щелкнуть по той же строке, свойство не обновляется.Если щелкнуть любую другую строку, свойство изменится, как и ожидалось.
Есть ли способ отменить выбор сетки данных, если для свойства binded установлено значение null?Также я ищу решение MVVM, так как не хочу писать код позади.Я могу решить эту проблему, написав код, поэтому не тратьте время на то, чтобы предлагать такие решения:)
le: это моя собственность в ВМ:
public RPLUser SelectedUser
{
get
{
return selectedUser;
}
set
{
selectedUser = value;
OnPropertyChanged("SelectedUser");
}
}
Заранее спасибо!