Вы установили значение элемента «Id», но пытаетесь использовать «AnswerId» в качестве выбранного значения.
Без подробностей трудно сказать, почему настройка SelectedIndex
выдает ArgumentOutOfRangeException
- возможно, поле со списком игнорирует все значения, которые не имеют свойства "Id", что не дает никаких значений, поэтому выбор индекса 1 невозможен?
РЕДАКТИРОВАТЬ: Хорошо, так выглядиткак будто он выполняет связывание, только когда оно становится видимым - или на каком-то этапе процесса.Я пробовал несколько вещей, чтобы ускорить это, но они не помогают.То, что вы можете сделать, это отложить ваш выбор:
EventHandler visibleChangedHandler = null;
visibleChangedHandler = delegate {
cmb.SelectedIndex = 2;
cmb.VisibleChanged -= visibleChangedHandler; // Only do this once!
};
cmb.VisibleChanged += visibleChangedHandler;
Это уродливый обходной путь, но он должен, по крайней мере, помочь вам начать работу на данный момент.