Прежде всего:Как добавить элемент в Repeater управления вручную
- _ddlOptions является выпадающий список
- _selectedOptions является управление повторителем
и это просто временный код моего окончательного контроля.
Что я хочу сделать, это получить данные для _ddlOption on! IsPostBack. Существует кнопка «Добавить», которая позволяет пользователю перемещать выделенный раскрывающийся элемент в элемент управления ретранслятора.
Это следующий способ обновления Repeater.Items правильно? Я нашел много решений по добавлению/удалению элементов вручную с помощью DataSource, но здесь мой DataSource имеет значение NULL, поскольку я устанавливаю его только на! IsPostBack.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
_ddlOptions.DataSource = new[] { 1, 2, 3 };
_ddlOptions.DataBind();
}
}
protected void OnAdd(object sender, EventArgs e)
{
var list = new ArrayList(_selectedOptions.Items);
list.Add(_ddlOptions.SelectedItem);
_ddlOptions.Items.RemoveAt(_ddlOptions.SelectedIndex);
_selectedOptions.DataSource = list;
_selectedOptions.DataBind();
}
Хм, я думаю, что вам не хватает точки. Я собираюсь получать данные только один раз! IsPostBack, а позже я не буду хранить источник данных. Я использую механизм ViewState, чтобы элементы управления восстанавливали их содержимое. – dragonfly