最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
asp.net GridView自定义模板编辑 更新 取消 删除
时间:2011-03-12 编辑:简简单单 来源:一聚教程网
之前用gridview控件都是用默认的编辑啊更新等默认功能,今天上网找了些资料,尝试了下用自定义模板实现编辑更新取消删除功能。以下是我最近做的眼镜网后台留言列表,实例图片如下:
点击编辑时出现textbox和checkbox:
以下为各文件的代码,其中红色为应注意地方.蓝色为文件,有理解错误的地方请高手指出,小弟感激不尽
gridview.asp教程x文件
onrowdeleting="gridview1_ondeletecommand">
<%# eval("name") %>
<%# eval("question") %>
<%# eval("answer") %>
<%# eval("pass") %>
mytry.cs文件
1.public datatable getdate(){返回dataset}
2.public void update(string answer,int pass,string pk){} //更新
3.public void delete(string strid){} //删除
gridview.aspx.cs文件
mytry objmytry = new mytry(); //实例化
void binddr()
{
this.gridview1.datasource = objmytry.getdate();
this.gridview1.databind(); //数据绑定
this.gridview1.databind(); //数据绑定
}
protected void gridview1_onrowcommand(object sender, gridviewediteventargs e) //触发编辑事件
{
gridview1.editindex = e.neweditindex; //切换到编辑页
binddr(); //数据绑定
}
protected void gridview1_oncancelcommand(object sender, gridviewcancelediteventargs e)//触发取消事件
{
gridview1.editindex = -1; //后退一页
binddr(); //数据绑定
}
{
gridview1.editindex = e.neweditindex; //切换到编辑页
binddr(); //数据绑定
}
protected void gridview1_oncancelcommand(object sender, gridviewcancelediteventargs e)//触发取消事件
{
gridview1.editindex = -1; //后退一页
binddr(); //数据绑定
}
protected void gridview1_onupdatecommand(object sender, gridviewupdateeventargs e) //触发更新事件
{
string pk = gridview1.datakeys[e.rowindex].value.tostring(); //获取当前行主键id
gridviewrow gvr = gridview1.rows[e.rowindex]; //实例化一行
{
string pk = gridview1.datakeys[e.rowindex].value.tostring(); //获取当前行主键id
gridviewrow gvr = gridview1.rows[e.rowindex]; //实例化一行
string stranswer = ((textbox)gvr.findcontrol("txtanswer")).text; //获取textbox里面的值
try
{
bool is_checked = ((checkbox)gvr.findcontrol("pass_check")).checked; //获取checkbox的值
if (is_checked == true)
{
int a=convert.toint32(is_checked); //把bool型转为整型
objmytry.update(stranswer, a , pk);
string c = request.urlreferrer.tostring();
response.redirect(c); //返回上次页面
}
else
{
{
bool is_checked = ((checkbox)gvr.findcontrol("pass_check")).checked; //获取checkbox的值
if (is_checked == true)
{
int a=convert.toint32(is_checked); //把bool型转为整型
objmytry.update(stranswer, a , pk);
string c = request.urlreferrer.tostring();
response.redirect(c); //返回上次页面
}
else
{
int b = convert.toint32(is_checked);
objmytry.update(stranswer, b , pk);
string c = request.urlreferrer.tostring();
response.redirect(c );
}
}
catch (exception ex)
{
alter(ex.message);
}
}
string c = request.urlreferrer.tostring();
response.redirect(c );
}
}
catch (exception ex)
{
alter(ex.message);
}
}
protected void gridview1_ondeletecommand(object sender, gridviewdeleteeventargs e) //触发删除事件
{
string pk = gridview1.datakeys[e.rowindex].value.tostring();
try
{
objmytry.delete(pk);
alter("删除成功!");
binddr();
}
catch (exception ex)
{
alter(ex.message);
}
}
{
string pk = gridview1.datakeys[e.rowindex].value.tostring();
try
{
objmytry.delete(pk);
alter("删除成功!");
binddr();
}
catch (exception ex)
{
alter(ex.message);
}
}
private void alter(string strmessage) //弹出对话框
{
response.write("");
}
{
response.write("");
}
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10