我发现DataGrid一个无法解释的现象,不知道算不算是漏洞,请高手给我解释一下,谢谢!
DataGrid里有一模板列,里面有一DropDownList,我要实现它的事件,办法很多,我只讨论下面这个办法:
。。。。。。。
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item)
{
DropDownList ddl=(DropDownList)e.Item.FindControl("DropDownList1");
ddl.Items.Add("aaa");
ddl.Items.Add("bbb");
ddl.Items.Add("ccc");
ddl.AutoPostBack=true;
ddl.SelectedIndexChanged+=new System.EventHandler(this.DropDownList_SelectedIndexChanged);
}
}
private void DropDownList_SelectedIndexChanged(object sender, System.EventArgs e)
{
Response.Write("<script>alert('aaaaaaaa');</script>");
}
如果你的DataGrid的属性是自动创建列,上面的方法成功,但只要不是自动创建列,而是有绑定列,上面的代码不报错误,但是DropDownLst的事件无法实现,大家可以试试。为什么如此???????