【ASP.net控件】DropDownList数据绑定一个小bug

  绑定数据出现这种情况,明明在第一项插入了一条数据,却始终在DropDownList中没有显示出来。

 代码如下: 

if (!IsPostBack)
            {

                //绑定城市
                DataTable dtCity = new HighSearch().GetCitySelect();
                DropDownList1.DataSource = dtCity;
                DropDownList1.DataValueField = "citycode";
                DropDownList1.DataTextField = "cityname";
                DataBind();
                DropDownList1.Items.Insert(0, new ListItem("请选择城市", ""));
                DropDownList2.Items.Insert(0, new ListItem("请选择线路", ""));
                DropDownList3.Items.Insert(0, new ListItem("请选择站点", ""));

                //绑定项目
                DataTable dtProject = new HighSearch().GetProjectSelect();
                DropDownList4.DataSource = dtProject;
                DropDownList4.DataValueField = "projectname";
                DropDownList4.DataTextField = "projectname";
                DataBind();
                DropDownList4.Items.Insert(0, new ListItem("请选择项目", ""));

            }

结果如下:

找了好久才找到原因,原因是DropDownList要先绑定完数据后再插入选项。

修改代码如下:

if (!IsPostBack)
            {            
                //绑定项目
                DataTable dtProject = new HighSearch().GetProjectSelect();
                DropDownList4.DataSource = dtProject;
                DropDownList4.DataValueField = "projectname";
                DropDownList4.DataTextField = "projectname";
                DataBind();
         
                //绑定城市
                DataTable dtCity = new HighSearch().GetCitySelect();
                DropDownList1.DataSource = dtCity;
                DropDownList1.DataValueField = "citycode";
                DropDownList1.DataTextField = "cityname";
                DataBind();

                DropDownList1.Items.Insert(0, new ListItem("请选择城市", ""));
                DropDownList2.Items.Insert(0, new ListItem("请选择线路", ""));
                DropDownList3.Items.Insert(0, new ListItem("请选择站点", ""));
                DropDownList4.Items.Insert(0, new ListItem("请选择项目", ""));
                            
            }        

这个bug解决了。

 

  一定要记住绑定多个数据的时候,要先把数据全部绑定完了,再插入第一项的数据。

【ASP.net控件】DropDownList数据绑定一个小bug,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。