Невозможно повторно связать ComboBox с привязкой к данным в VB.Net

У меня есть каскадные поля со списком с привязкой к данным, однако, если второе из двух полей не имеет значения, я пытаюсь изменить источник данных исходного процесса на выбор по умолчанию.

Однако я получаю ошибки независимо от того, что я пытаюсь сделать, чтобы очистить поле со списком.

    cboSubSystem.SelectedIndex = -1
    cboSubSystem.DataSource = Nothing
    Call cboSubSystem.Items.Clear()

    cboSubSystem.DataSource = oSubSystem.EntityList
    cboSubSystem.DisplayMember = oSubSystem.ORM.SubSystem_c
    cboSubSystem.ValueMember = oSubSystem.ORM.SubSystem_c

Я также попробовал двойной набор для SelectedIndex, например http://support.microsoft.com/default.aspx?scid=kb;en-us;327244

Что я делаю неправильно? Я уверен, что это что-то простое, но я не могу пройти мимо этого.

Заранее спасибо.

РЕДАКТИРОВАТЬ:

  • EntityList — это общий список для DTO.
  • Выпадающие списки используют разные источники данных, когда установлен этот, я просто вызываю подпрограмму для загрузки другого.
  • Errors:
    • Currently: "Items collection cannot be modified when the DataSource property is set." at the Items.Clear
    • Если я попытаюсь удалить очистку, я получаю «Невозможно привязать к новому члену значения. Имя параметра: значение» в наборе значений

person RiddlerDev    schedule 27.12.2010    source источник
comment
Какие ошибки вы получаете и где вы их берете? Какой тип имеет oSubSystem и его свойства EntityList и ORM+SubSystem_c? Покажите нам исходный код.   -  person Tim Schmelter    schedule 28.12.2010
comment
Как вы реализовали каскадные поля со списком с привязкой к данным? Где связь, оба поля со списком используют один и тот же источник данных?   -  person Tim Schmelter    schedule 28.12.2010
comment
ORM — это просто строковое значение имени столбца для DTO, в данном случае просто SubSystem_c.   -  person RiddlerDev    schedule 28.12.2010
comment
Глядя на это больше ... даже если я установил источник данных = ничего, он все равно установлен на старый источник ... даже попытался очистить привязки данных.   -  person RiddlerDev    schedule 28.12.2010


Ответы (1)


Нашел мою проблему. Была процедура обработки события для изменения индекса, которая загружала второе поле со списком. В этом поле со списком использовался выбранный индекс, и, по-видимому, это заблокировало источник данных настолько, что я не мог его очистить. Удалось исправить это перестройкой процесса обновления.

person RiddlerDev    schedule 28.12.2010