У меня есть два dropdownlist's.DropDownList2 (не связан с источником данных) и DropDownList3 (связанный с источником данных)DropDownList в ASP.net C#
об изменении на входе в одном DropDownList некоторое содержание в другом меню списка следует изменить. Для этого я использовал логику как.
Автоповтор включен для обоих этих элементов управления.
protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList2.SelectedItem.Text == "Stamp")
{
DropDownList3.Items.Remove(DropDownList3.Items.FindByText("STA"));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText("STM"));
}
<asp:DropDownList ID="DropDownList3" runat="server"
DataSourceID="SqlDataSource1" DataTextField="skey" DataValueField="casecode"
AppendDataBoundItems="True" AutoPostBack="True">
<asp:ListItem Selected="True" Value="S">Select</asp:ListItem>
</asp:DropDownList>
Теперь проблема, когда я выбираю DropDownList2.SelectedItem.Text == "Reg"
STA и STM нет. Я хочу STA и STM значения в раскрывающемся списке на выбор 'Reg'.
Когда я впервые загружаю свою страницу и выбираю «Reg», все значения в DropDownList3 присутствуют, и когда я выбираю «Stamp», значения STA и STM потерянный (как показано в коде). Теперь снова, когда я выбираю «Reg», этих значений нет, я хочу, чтобы эти значения присутствовали снова.
Что мне делать? Нужно ли мне снова привязывать его к базе данных?
Есть ли другая логика для того, чтобы использовать по-другому? Если кто-то может помочь мне
еще { DropDownList2.Items. Добавить ("СТО"); DropDownList2.Items.Add ("STM"); } Я сделал это, но это работает – Ishan
Вы имеете в виду DropDownList3.Items.Add ("") правильно? Что не сработало? они просто не появились? Возможно, проблема в том, когда вы привязываетесь - можете ли вы разместить больше кода? – Prescott
также на SelectedIndexChanged, элементы не удаляются, только когда я нажимаю кнопку отправки, я могу видеть изменения. Как это так? – Ishan