简体   繁体   English

从ASP.NET C#中的DropDownList删除项目

[英]Deleting items from a DropDownList in ASP.NET C#

I have a DropDownList in my ASPX page: 我的ASPX页面中有一个DropDownList:

<asp:DropDownList ID="ddlGroups" runat="server" Width="200px" AppendDataBoundItems="true"
            AutoPostBack="true" OnSelectedIndexChanged="ddlGroups_SelectionIndexChanged">
            <asp:ListItem Text="All" Value="0"></asp:ListItem>
            <asp:ListItem Text="Pending" Value="1"></asp:ListItem>
            <asp:ListItem Text="Completed" Value="2"></asp:ListItem>
</asp:DropDownList>

Also based on a condition I am populating the DropDownList in my code behind : 同样基于条件,我在后面的代码中填充了DropDownList:

  List<Status> lstStatus  = new List<Status>();
  lstStatus = GetStatus() //Get's the list from db
  if (lstStatus != null && lstStatus.Count > 0)
    {
        ddlGroups.DataSource = lstStatus;
        ddlGroups.DataTextField = "StatusDescription";
        ddlGroups.DataValueField = "StatusID";
        ddlGroups.DataBind();
       /* ddlGroups.
        ddlGroups.Items.Remove("Completed");*/
    }

When I do this, I do not want the DropDownList to be poulated from the ASP.NET page markup. 当我这样做时,我不希望从ASP.NET页标记中填充DropDownList。 Ie I want to remove the items added from the aspx code (only two of them). 即我想从aspx代码中删除添加的项目(仅其中两个)。

Any help? 有什么帮助吗?

清除下拉列表并根据需要填充。

DropDownList1.Items.Clear(); 
            if (lstStatus != null && lstStatus.Count > 0)
            {
                ddlGroups.Items.Clear();
                ddlGroups.DataSource = lstStatus;
                ddlGroups.DataTextField = "StatusDescription";
                ddlGroups.DataValueField = "StatusID";
                ddlGroups.DataBind();
            }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM