Asp.net的GridView控件实现单元格可编辑
最近做一个功能,考虑到用户使用方便,减少弹出页面,采用点“编辑”按钮无需弹出页面直接当前行的单元格内容就能编辑。进入页面显示如下图:
点“编辑”按钮后显示如下图:
编号为1的“星期”和“是否上班”均可编辑,编辑完成后,点“更新”保存。
第一张图中的数据加载是通过下述方法实现:
protectedvoid GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{……}
第二张图中的修改数据是通过下述方法实现:
protectedvoidGridView_Pue_RowUpdating(object sender, GridViewUpdateEventArgs e)
{……}
本以为就这样变可以搞定,谁知道点更新按钮出现“激发未处理的事件RowEditing”错误:
给GridView添加了
protectedvoidGridView_RowEditing(object sender, GridViewEditEventArgs e)
{……}
解决该问题,但是每次需要点两次“编辑”按钮才会出现图2所示的界面,通过调试发现点第一次“编辑”按钮的时候是跳入到GridView_RowEditing方法中,在该方法中加入代码:
GridView.EditIndex= e.NewEditIndex;
BindGrid();
解决该问题