为什么会报错

时间:2023-02-04 17:04:01
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string ID =DataGrid1.DataKeys[e.Item.ItemIndex].ToString();
string fabricID=e.Item.Cells[3].Text;
string colorid=e.Item.Cells[5].Text;
if (e.CommandName=="Select")
{
Response.Write("<Script Language='JavaScript' >window.location.replace('fabric024_brow.aspx?Action=MODIFY&ID="+ID+"&fabricID="+fabricID+"&colorid="+colorid+"&return_colorid="+Textbox5.Text+"&return_CHNColorName="+Textbox7.Text+"&factory="+TextBox1.Text+"&shortname="+TextBox2.Text+"&fabricID1="+TextBox3.Text+"&fabricName="+TextBox4.Text+"');window.close();</Script>"); 

}

9 个解决方案

#1


如果不换页能正常运行。
当点击第二页时会提示下面代码出错

string fabricID=e.Item.Cells[3].Text

出错原因是:异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。参数名: index。

#2


急请高手给矛解答。

#3


可能是数组超出范围了吧``

#4


那为什么数组会超出范围呢

#5


up.
急求高人指点。

#6


看看返回值有没有为NULL,或提的数据是否为空

#7


是呀,返回值为NULL呀。怎么控制返回值呀

#8


我觉得这个问题的关键就在于换页。
能不能截获换页这个动作呀。
换页时不运行这段程序这个问题应该就可以解决了吧。

#9


顶起来。

#1


如果不换页能正常运行。
当点击第二页时会提示下面代码出错

string fabricID=e.Item.Cells[3].Text

出错原因是:异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。参数名: index。

#2


急请高手给矛解答。

#3


可能是数组超出范围了吧``

#4


那为什么数组会超出范围呢

#5


up.
急求高人指点。

#6


看看返回值有没有为NULL,或提的数据是否为空

#7


是呀,返回值为NULL呀。怎么控制返回值呀

#8


我觉得这个问题的关键就在于换页。
能不能截获换页这个动作呀。
换页时不运行这段程序这个问题应该就可以解决了吧。

#9


顶起来。