我在设计页面中有一个下拉列表,如下所示:
<asp:DropDownList ID="ddlArtList" runat="server">
<asp:ListItem Value="95">Select</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
<asp:ListItem Value="5">5</asp:ListItem>
<asp:ListItem Value="6">6</asp:ListItem>
</asp:DropDownList>
根据要求,上述项目有时会被C#中的其他一些值覆盖。 但最后我想在C#的帮助下绑定上述默认项目以获得上述列表项。
我想知道是否有任何内置方法或属性来绑定C#中的下拉列表(.aspx)。
不使用此:ddlArtList.Items.Add(&#34; 1);等等。
提前致谢。
答案 0 :(得分:2)
.aspx代码:
<asp:DropDownList ID="ddlArtList" AppendDataBoundItems="True" runat="server">
<asp:ListItem Value="95">Select</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
<asp:ListItem Value="5">5</asp:ListItem>
<asp:ListItem Value="6">6</asp:ListItem>
</asp:DropDownList>
<强>服务器侧强>:
ddlArtList.AppendDataBoundItems="True"
答案 1 :(得分:2)
您可以在第一次页面加载期间保留默认列表 -
if(!isPostback)
{
ListItem[] items = new ListItem[ddlArtList.Items.Count];
ddlArtList.Items.CopyTo(items, 0);
Session["ddlArtList"] = items;
}
现在,当您想重置列表时 -
if(Session["ddlArtList"] != null)
{
ListItem[] items = Session["ddlArtList"] as ListItem[];
ddlArtList.Items.Clear();
ddlArtList.Items.AddRange(items);
}
答案 2 :(得分:0)
如果要附加到默认列表,请使用您提供的标记来设置默认列表。如前所述,您需要将AppendDataBoundItems设置为true。
<asp:DropDownList ID="ddlArtList" runat="server" AppendDataBoundItems="true">
<asp:ListItem Value="95">Select</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
<asp:ListItem Value="5">5</asp:ListItem>
<asp:ListItem Value="6">6</asp:ListItem>
</asp:DropDownList>
在代码隐藏中,您可以将DataSource设置为附加项,只需调用DataBind即可。这会将这些项目附加到您的下拉列表中。
ddlArtList.DataSource = new List<int>{ 10, 11, 12 }; // replace with actual data source you are using
ddlArtList.DataBind();
根据您的所有需求,您可以在页面的加载事件或其他事件处理程序中添加这些附加项目,例如按钮单击或从其他下拉列表中选择或其他任何内容。