Линейная комбинация перечисленного
MyDropDownList.Insert(0,Item);
MyDropDownList.DataBind();
MyDropDownList.SelectedIndex = 1;
Дело в том, что реальная привязка данных происходит по событию DataBind, поэтому если обращаться к коллекции элементов раньше, чем произошло это событие, то будет исключение, потому как их там реально еще нет.
Здравствуйте, Nisus, Вы писали:
N>Линейная комбинация перечисленного N>MyDropDownList.Insert(0,Item); N>MyDropDownList.DataBind(); N>MyDropDownList.SelectedIndex = 1; N>Дело в том, что реальная привязка данных происходит по событию DataBind, поэтому если обращаться к коллекции элементов раньше, чем произошло это событие, то будет исключение, потому как их там реально еще нет.
в данном варианте вызов Databind вообще излишен, так он привязывает данные из DataSource, при добавлении Itemov вручную DataBind не нужен
... << RSDN@Home 1.0 beta 6a >>
Re[4]: Проблеме с DropDownList
От:
Аноним
Дата:
15.04.03 06:22
Оценка:
Так то будет работать , но у меня задача другая:
1. Считать данные из DataSet в DropDownList
2. добавить один элемент ( которого нет в DataSet )
3. Установить нужную позицию в DropDownList
в данном примере, мы сначала делаем биндинг, а потом добавляем 1 доп элемент.
кстати, можете привести текст эксепшена?
мне подумалось следующее... в вашем варианте вы пытаетесь вызвать lstMyDDL.SelectedIndex=1;
если у вас в DDL всего 1 логично что будет эксепшен, ведь нумерация с нуля...
Здравствуйте, <Аноним>, Вы писали:
А>Не понял что есть DDL
А>У меня последовательность действий такова :
А> А>List.DataBind(); А>List.Insert(0,item); А>List.SlectedIndex = 1;
А> Сообщение об ошибке: А>A DropDownList cannot have multiple items selected.
DDL — DropDownList
чтобы делать DataBind() нужно указать List.DataSource=...
Вы это делаете? из приведенного фрагмента это не очевидно.
на какой строке падает? на 2й или на 3й?
проверьте после добавления элемента, сколько элементов находится в Листе.
... << RSDN@Home 1.0 beta 6a >>
Re[5]: Проблеме с DropDownList
От:
Аноним
Дата:
16.04.03 12:18
Оценка:
А>List.DataBind(); А>List.Insert(0,item); А>List.SlectedIndex = 1;
А> Сообщение об ошибке: А>A DropDownList cannot have multiple items selected.
Тебе фигню порют
Перед 3-1 строкой надо сделать SelectedItem'у Selected = false.