我很懒-我正在使用SQLDataSource填充我的dropdownLists。

数据绑定(bind)对象的Databind事件在Page.PreRender之前调用,因此我在PreRender eventHandler中执行以下操作:

private void InitializeDropDown()
        {
            this.myDropDown.Items.Insert(0, new ListItem("-- Select something --"));
        }

我知道我可以将AppendDataBound项目设置为true并在标记中对自定义项目进行硬编码,但是在恢复到该状态之前,我想了解为什么我的工作无法正常进行。

当我像这样动态绑定(bind)内容时,通常可以使用:
myDropDown.DataTextField = "whatever";
myDropDown.DataValueField = "ID";
myDropDown.DataSource = GetStuff();
myDropDown.DataBind();
myDropDown.Items.Insert(0, "-- Select something --");

我在做什么应该是等效的-唯一的区别是我正在使用SQLDataSource。

任何帮助表示赞赏!

最佳答案

将插入行放在数据源的OnSelected方法上

myDropDown.Items.Insert(0,“-选择内容-”);

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.sqldatasource.selected.aspx

10-08 03:58