用户信息的处理()
删除
删除不会使控件处于编辑状态所以只需要在这里得到用户单击的控件的某一项然后用这一项和数据库进行关联即可进行删除操作删除完毕后不要忘记再读出数据重新绑定到控件上主要代码如程序所示
程序 ST_Admin_usermanaspxcs
protected void GridView_RowDeleting(object sender
GridViewDeleteEventArgs e)
{
string ST_myid;
string ST_strsql = ;
//获取当前行的主键
ST_myid = GridViewRows[eRowIndex]Cells[]Text;
//删除数据
ST_strsql = delete * fromt ST_tUser where ST_ID= + ST_myid;
ST_databaseexecsql(ST_strsql)
//重新读取并绑定
ST_strsql = SELECT * FROM ST_tUser order by ID desc ;
DataTable ST_dt = ST_databaseReadTable(ST_strsql)
GridViewDataSource = ST_dt;
GridViewDataBind()
}
【代码说明】代码第行是获取GridView中要被删除的行的主键因为前台在设计时将ID字段放在了第一列而Cells[]就是读取第一列因为索引是从开始删除数据后GridView的数据发生变化所以代码第~行需要重新读取数据库的数据并绑定到GridView
EditIndex属性
当单击编辑按钮时需要先获取管理员所单击按钮在网格中的索引然后将其赋值给GridView的EditIndex属性再读取数据库将数据绑定到GridView主要代码如程序所示
程序 ST_Admin_usermanaspxcs
protected void GridView_RowEditing(object sender
GridViewEditEventArgs e)
{
//获取编辑的行号
GridViewEditIndex = eNewEditIndex;
//重新绑定数据
string ST_strsql;
ST_strsql = SELECT * FROM ST_tUser order by ST_ID desc ;
DataTable ST_dt = ST_databaseReadTable(ST_strsql)
GridViewDataSource = ST_dt;
GridViewDataBind()
}
【代码说明】代码第行通过eNewEditIndex获取编辑的行号因为页面的数据可能被用户作了更改所以通过代码第~行重新绑定数据
更新
单击更新按钮会触发GridView_RowUpdating事件在这个事件中先退出编辑状态然后根据管理员在TextBox中输入的数据更新数据库的内容再次读取数据库中的内容并绑定到GridView主要代码如程序所示
程序 ST_Admin_usermanaspxcs
protected void GridView_RowUpdating(object sender
GridViewUpdateEventArgs e)
{
string ST_id;
string ST_strsql;
//定义个TextBox控件
TextBox username userpass useracc;
ST_id = GridViewRows[eRowIndex]Cells[]Text;
username =
(TextBox)(GridViewRows[eRowIndex]Cells[]Controls[])
userpass =
(TextBox)(GridViewRows[eRowIndex]Cells[]Controls[])
useracc =
(TextBox)(GridViewRows[eRowIndex]Cells[]Controls[])
//更新数据库的数据
//TextBoxText=tbText;
ST_strsql = update ST_tUser set ST_username= + usernameText
+ ST_userpassword=
+ userpassText + ST_userclass= + useraccText
+ where ST_ID= + ST_id;
//ResponseWrite(strsql)
ST_databaseexecsql(ST_strsql)
//重新绑定GridView
ST_strsql = SELECT * FROM ST_tUser order by ST_ID desc ;
GridViewEditIndex = ;
DataTable ST_dt = ST_databaseReadTable(ST_strsql)
GridViewDataSource = ST_dt;
GridViewDataBind()
}
…
【代码说明】代码第行定义了个TextBox控件它们的值通过代码第~行获取其中eRowIndex表示当前编辑行的行号而Cells[]就表示当前行的第列代码第~行是在数据库中更新当前行的语句代码第~用来重新绑定更新后的数据
说明Rows[eRowIndex]Cells[]Controls[]表示指定行第二列中的控件集合中的第一个控件
返回目录ASPNET项目开发指南
编辑推荐
ASPNET MVC 框架揭秘
ASPNET开发宝典
ASP NET开发培训视频教程