У меня есть пара выпадающих списков, подобных этому
<asp:DropDownList runat="server" OnSelectedIndexChanged="Update_ddls" AutoPostBack="true" ID="ddl1" />
<asp:DropDownList runat="server" ID="ddl2" />
Которые заполняются столбцом в моей БД, как это
query.CommandText = "SELECT * FROM locations"
DataTable = New DataTable()
DataAdapter = New SqlDataAdapter(query)
DataAdapter.Fill(DataTable)
If Not Page.IsPostBack Then
ddl1.DataSource = DataTable.DefaultView
ddl1.DataTextField = "location"
ddl1.DataValueField = "location"
ddl1.DataBind()
ddl1.Items.Insert(0, New ListItem("Select...", "Select..."))
End If
У меня также есть функция с именем Update_ddls
, которая запускает OnSelectedIndexChanged
, которая выглядит следующим образом
ddl2.Items.Remove(ddl2.Items.FindByValue(ddl1.SelectedValue.ToString()))
, который удаляет выбранный элемент в ddl1 из второго раскрывающегося списка, но если я продолжу изменять элемент ddl1
, то в ddl2
не останется никаких элементов.
Есть ли способ повторно добавить ранее удаленные элементы в функцию Update_dlls
без повторного связывания данных, потому что, если я повторно привязываю данные, я потеряю выбранный элемент в ddl
?
Заранее спасибо