カスケード接続された2つDropDownList
のコントロールがあります(2番目のコントロールは最初のコントロールで行われた選択に基づいて入力されます):
<asp:DropDownList ID="ddlProduct" runat="server" AppendDataBoundItems="true"
AutoPostBack="true" onselectedindexchanged="ddlProduct_SelectedIndexChanged">
<asp:ListItem Value="" Selected="True"> - Product - </asp:ListItem>
</asp:DropDownList>
<asp:DropDownList ID="ddlCategory" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="ddlCategory_SelectedIndexChanged" AppendDataBoundItems="true">
<asp:ListItem Value="" Selected="True"> - Category - </asp:ListItem>
</asp:DropDownList>
ddlProduct.SelectedIndexChanged
イベントハンドラーには、次のコードがあります。
ddlCategory.DataSource = _productService.GetCategoryByProductId(ddlProduct.SelectedValue);
ddlCategory.DataTextField = "CategoryName";
ddlCategory.DataValueField = "CategoryId";
ddlCategory.DataBind();
ユーザーが初めて製品を選択したときは、ddlProduct
正しくddlCategory
入力されています。以下の場合ddlCategory
、最初に選択されたカテゴリに、のカテゴリが追加されます。私は入れようとしましたddlProduct.SelectedIndexChanged
:
ddlCategory.Items.Clear();
ただし、このメソッドはハードコードされたアイテムも削除します
<asp:ListItem Value="" Selected="True"> - Category - </asp:ListItem>
追加されたアイテムをddlCategoryから削除するにはどうすればよいですか?