为什么GridView只能编辑第一行?
c#WebApplication写入如下代码:protectedvoidGridView1_RowEditing(objectsender,GridViewEditEve...
c# WebApplication
写入如下代码:
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
((TextBox)GridView1.Rows[n].Cells[5].Controls[0]).ReadOnly = true;
}
点击第一行的时候可以编辑,但是点击其他行的时候,总是提示“指定的参数已超出有效值的范围”
请问这是为什么?应该如何解决?
希望大家帮忙,谢谢!
而且,不管点哪一行,都使第一行进入编辑状态 展开
写入如下代码:
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
((TextBox)GridView1.Rows[n].Cells[5].Controls[0]).ReadOnly = true;
}
点击第一行的时候可以编辑,但是点击其他行的时候,总是提示“指定的参数已超出有效值的范围”
请问这是为什么?应该如何解决?
希望大家帮忙,谢谢!
而且,不管点哪一行,都使第一行进入编辑状态 展开
展开全部
GridView1.EditIndex = e.NewEditIndex;
GridView1.DataBind();//此时使GridView1变成编辑状态
((TextBox)GridView1.Rows[e.NewEditIndex].FindControl("TextBox1")).ReadOnly = true; //此时要使编辑状态下的TEXTBOX的控件为不可用状态,最好是使用FindControl.当然使用Rows[n].Cells[5].Controls[0]也可以,但是这个就要注意Controls的索引对应的控件是否是你需要的TEXTBOX.
GridView1.DataBind();//此时使GridView1变成编辑状态
((TextBox)GridView1.Rows[e.NewEditIndex].FindControl("TextBox1")).ReadOnly = true; //此时要使编辑状态下的TEXTBOX的控件为不可用状态,最好是使用FindControl.当然使用Rows[n].Cells[5].Controls[0]也可以,但是这个就要注意Controls的索引对应的控件是否是你需要的TEXTBOX.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
取索引取错了,你看看你取出来的索引是多少,先输出一下看看.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
e.NewEditIndex;
这个取值出错了
int id = int.parse(gridView1.selectIndex[gridView1.selectIndex].Cells[0].Text);
这个取值出错了
int id = int.parse(gridView1.selectIndex[gridView1.selectIndex].Cells[0].Text);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询