protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { //前略 drplstSchool.SelectedValue = selectedRow.Cells[1].Text; //后略 }
一个GridView中设置了可选择行,上面是点击“选择”以后的事件处理函数,意图是用GridView的某个单元格内容填充到一个DropdownList控件中,但很奇怪的是当页面加载完第一次点击“选择”的时候这个drplstSchool.SelectedValue的值是null?但再点击一次就可以正常显示了。
这是什么原因呢?更改SelectValue的地方就只有这一处
DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(DropDownList1.Items.FindByValue("中国"));
类似这样的写法我也试过,无效,要赋值的字符串的内容是有的,但是SelectedIndex = -1
已解决:在Page_Load方法中强行给DropdownList进行一次数据绑定即可。