2013-05-12 4 views
2

У меня естьНе удается удалить элементы из COMBOBOX C#

public ObservableCollection<Canal> channelList { get; set; }

(я также попробовал список, канал класс). Я рисую некоторые данные из списка, которые находятся внутри каналов. И у меня также есть comboBox, отображающий каждое имя канала.

Моя проблема заключается в том, что я не могу это сделать:

comboBox1.Items.Clear();

Потому что это дает мне «Операция не действует при ItemsSource в использование Access и изменять элементы с ItemsControl.ItemsSource вместо..» ошибка.

Данные привязаны, но я не знаю, важно ли это. Благодаря

ответ

4

В MSDN страницы, он говорит:

Когда ItemsSource используется, установив свойство пустого значения удаляет сбор и восстанавливает использование для предметов, которые будут пустой ItemCollection.

Поскольку ItemsSource используется, вы должны установить его в нулевое значение, чтобы очистить пункты:

comboBox1.ItemsSource = null; 
1

Если вы не хотите, чтобы удалить связывания (как это было предложено другой ответ), вы бы должны очистить коллекцию, которая является источником связывания:

channelList.Clear(); 

Теперь вы можете добавлять новые элементы в channelList, который обновит ComboBox, поскольку привязка все еще не повреждена.

Смежные вопросы