日期:2014-05-18  浏览次数:20479 次

关于一个 DataGrid控件的问题

 System.ArgumentOutOfRangeException: 指定的参数已超出有效值的范围。参数名: value



代码如下:


private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
switch(e.Item.ItemType)
{
case ListItemType.Item:
case ListItemType.AlternatingItem:
Button bt = (Button)e.Item.Cells[3].Controls[0];
//Attributes可以将客户端事件加载
bt.Attributes.Add("onclick","return confirm('真的要删除吗?')");

break;
case ListItemType.EditItem:
Busi.Users obj = new Weblianghua.Busi.Users();
System.Data.DataTable table = obj.SelectReallyName();

DropDownList l= (DropDownList)e.Item.Cells[1].FindControl("DropDownList2");
l.DataSource = table;
l.DataTextField = table.Columns["ReallyName"].ToString();
l.DataValueField = table.Columns["Uid"].ToString();
l.DataBind();
break;
}
}

------解决方案--------------------
我觉得你上面的操作都应该ItemDataBind()事件中