我使用db实体绑定下拉列表。.NET中的数据绑定DropDown控件
ddlCustomer.DataSource = Customer.GetAll();
ddlCustomer.DataTextField = "CustomerName";
ddlCustomer.DataBind();
我想添加“选择”作为下拉列表中的第一个项目列表,然后将实体绑定到下拉列表中。我怎样才能做到这一点?
我使用db实体绑定下拉列表。.NET中的数据绑定DropDown控件
ddlCustomer.DataSource = Customer.GetAll();
ddlCustomer.DataTextField = "CustomerName";
ddlCustomer.DataBind();
我想添加“选择”作为下拉列表中的第一个项目列表,然后将实体绑定到下拉列表中。我怎样才能做到这一点?
添加:
ddlCustomer.Items.Insert(0, "SELECT");
后ddlCustomer.DataBind();
该项必须在数据绑定后插入,因为数据绑定会清除项目。
我不知道是否有一种解决方案,但我之前做的是不使用DataBind,并首先创建将具有“选择”作为文本的ListItem对象,然后遍历从Customer.GetAll()返回的集合,并为集合中的每个项目创建一个ListItem对象,并使用“DropDownList.Iems.Add(MyItem)”将其添加到下拉列表中,我知道它看起来不太棒,但它完成这项工作,毕竟这是DataBind在后面做的事情。
我知道有一个答案了,但你也可以这样做:
<asp:DropDownList AppendDataBoundItems="true" ID="ddlCustomer" runat="server">
<asp:ListItem Value="0" Text="Select"/>
</asp:DropDownList>
这样的话,你会不会担心当你调用数据绑定,当你添加的选择项。
您还可以将DropDownList的'AppendDataBoundItems'属性设置为'True'。 “获取或设置一个值,该值指示列表项是否在数据绑定之前清除。”从http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.appenddatabounditems.aspx。 – Dhaust 2008-10-30 22:41:15