向DropDownList中添加绑定数据源之外的数据时(比如的“请选择”,“全选”之类的提示文)时,可以将AppendDataBoundItems值设定为“True”,然后在ASP页面中用<asp:ListItem>标签来添加数据。
<asp:DropDownList ID="DropDownList_ProductionName" runat="server" DataSourceID="SqlDataSource1" DataTextField="PRODUCTION_NAME" DataValueField="PRODUCTION_ID" AppendDataBoundItems =" true" AutoPostBack ="true">
<asp:ListItem Selected="True" Text="请选择" Value=""></asp:ListItem></asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MMCS_DBConnectionString %>" SelectCommand="SELECT [PRODUCTION_NAME], [PRODUCTION_ID] FROM [TblProductionMaster]"></asp:SqlDataSource>
此方法在单个DropDownList使用的时候没有问题。但是在几个DropDownList联动使用时,会出现一下问题。
例:
两个联动DropDownList_A和DropDownList_B
DropDownList_A(主动)的所选值更改时,DropDownList_B的备选值也相应的变动
如果DropDownList_B的属性AppendDataBoundItems设置为“True”,则无法根据DropDownList_A的所选数据来更新DropDownList_B的备选值。