如果控件正处于编辑状态单击更新按钮会触发GridView_RowUpdating事件在这个事件中先退出编辑状态接着根据管理员在TextBox中输入的数据更新数据库的内容然后再次读取数据库中的内容并绑定到GridView主要代码如程序所示
程序 ST_Admin_promanaspxcs
protected void GridView_RowUpdating(object sender
GridViewUpdateEventArgs e)
{
string ST_id;
string ST_strsql;
//获取要更新数据的主键
ST_id = GridViewRows[eRowIndex]Cells[]Text;
//获取更新后的数据
TextBox tb =
(TextBox)GridViewRows[eRowIndex]Cells[]Controls[];
ST_strsql = update ST_tProduct set ST_productname=
+ ((TextBox)(GridViewRows[eRowIndex]
Cells[]Controls[]))Text
+ ST_productprice= + ((TextBox)(GridViewRows[eRowIndex] Cells[]Controls[]))Text
+ ST_productpic=
+ ((TextBox)(GridViewRows[eRowIndex]
Cells[]Controls[]))Text
+ where ST_ID= + ST_id;
ST_databaseexecsql(ST_strsql)
ST_strsql = SELECT * FROM ST_tProduct order by ST_ID desc;
//取消编辑状态
GridViewEditIndex = ;
//重新绑定数据
DataTable ST_dt = ST_databaseReadTable(ST_strsql)
GridViewDataSource = ST_dt;
GridViewDataBind()
}
【代码说明】代码第行首先要获取当前编辑行的主键其中eRowIndex表示当前行号代码第~行定义了一条更新语句其中有多个读取GridView内容的关键代码如((TextBox)(GridViewRows [eRowIndex]Cells[]Controls[]))Text就是获取GridView中当前编辑行第二列中的控件然后将其显式转换为TextBox控件最后的Text属性就是获取这个TextBox控件的值代码第~行重新绑定数据
注意(TextBox)GridViewRows[eRowIndex]Cells[]Controls[];表示将控件显式转换为TextBox控件
当单击编辑按钮时需要先获取管理员所单击按钮在网格中的索引然后将其赋值给GridView的EditIndex属性再读取数据库将数据绑定到GridView之后页面就会出现更新和取消选项主要代码如程序所示
程序 ST_Admin_promanaspxcs
protected void GridView_RowEditing(object sender
GridViewEditEventArgs e)
{
//获取当前编辑的行号
GridViewEditIndex = eNewEditIndex;
//重新绑定数据
string ST_strsql;
ST_strsql = SELECT * FROM ST_tProduct order by ST_ID desc;
DataTable ST_dt = ST_databaseReadTable(ST_strsql)
GridViewDataSource = ST_dt;
GridViewDataBind()
}
【代码说明】代码第行的eNewEditIndex表示获取当前编辑行的行号是一个数值型数据代码第~行重新绑定数据到GridView此时显示的是编辑状态下的GridView
返回目录ASPNET项目开发指南
编辑推荐
ASPNET MVC 框架揭秘
ASPNET开发宝典
ASP NET开发培训视频教程
[] []