это мой первый вопрос, опубликованный здесь ... У меня есть пользовательский интерфейс, который содержит ListBox с предварительно загруженными элементами, а графический интерфейс позволяет пользователю добавлять или удалять элементы в этом списке.Очень просто.Проблема заключается в том, что когда я выбираю элементы в ListBox, я не могу отменить их выбор, если они были добавлены в ObservableCollection «во время выполнения» (элементы, загруженные «по умолчанию», работают нормально!).это:
<ListBox ItemsSource="{Binding RolFunciones}"
SelectionMode="Single"
DisplayMemberPath="Descripcion"
SelectedItem="{Binding SelectedRolFunciones, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Width="600"
Height="300" />
В моей ViewModel у меня есть:
ObservableCollection<RolFuncion> mRolFunciones;
public ObservableCollection<RolFuncion> RolFunciones
{
get { return mRolFunciones; }
set { mRolFunciones = value; OnPropertyChanged(() => RolFunciones); }
}
RolFuncion mSelectedRolFunciones;
public RolFuncion SelectedRolFunciones
{
get { return mSelectedRolFunciones; }
set { mSelectedRolFunciones = value; OnPropertyChanged(() => SelectedRolFunciones); }
}
...
// Constructor
public RolViewModel()
{
RolFunciones = new ObservableCollection<RolFuncion>();
RolFunciones.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(RolFunciones_CollectionChanged);
}
void RolFunciones_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
OnPropertyChanged(() => RolFunciones);
}
... И у меня есть метод, который добавляет элементв ObservableCollection, как это
void AddFunctionExecute()
{
RolFunciones.Add(new RolFuncion() { Descripcion = "dummy" });
}
У кого-то была такая же проблема?