日期:2014-05-16  浏览次数:20881 次

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();

解决该问题