GridView 编辑修改
//点击gridview控件自带的编辑按钮时执行的事件
protected void gvNewsList_RowEditing(object sender, GridViewEditEventArgs e)
{
gvNewsList.EditIndex = e.NewEditIndex;
BindData();
}
//在编辑状态下,点击取消按钮时执行的事件
protected void gvNewsList_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
gvNewsList.EditIndex = -1;
BindData();
}
//在编辑状态下,点击更新按钮时执行的事件
protected void gvNewsList_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
//这里是关键,在绑定数据的时候要指定主键名称,比如字段id,在这里可以获得这条记录的id
//而这个id就是我们要更改的数据的id
string ids = gvNewsList.DataKeys[e.RowIndex].Value.ToString();
//如果有多个DataKeyNames可以通过下面这个方法得到指定的一个
//string ids = gvNewsList.DataKeys[e.RowIndex][0].ToString();

SystemMemberLevelModel systemMemberLevelModel = systemMemberLevelBll.GetModel(Convert.ToInt64(ids));
if (string.IsNullOrEmpty(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[0].Controls[0]).Text))
{
Common.MessageBox.Show(this, "请输入级别名称!");
return;
}
else
{
systemMemberLevelModel.name = ((TextBox)gvNewsList.Rows[e.RowIndex].Cells[0].Controls[0]).Text;
}
//是否允许新增会员
systemMemberLevelModel.isAllowAddMember = ((CheckBox)gvNewsList.Rows[e.RowIndex].Cells[5].Controls[0]).Checked;
//是否缺省级别
systemMemberLevelModel.isDefault = ((CheckBox)gvNewsList.Rows[e.RowIndex].Cells[6].Controls[0]).Checked;
//是否新闻发布免审核
systemMemberLevelModel.isFreeAuditNews = ((CheckBox)gvNewsList.Rows[e.RowIndex].Cells[7].Controls[0]).Checked;
// 是否求购发布免审核
systemMemberLevelModel.isFreeAuditProvPur = ((CheckBox)gvNewsList.Rows[e.RowIndex].Cells[4].Controls[0]).Checked;
//供应发布数量
if (!string.IsNullOrEmpty(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[2].Controls[0]).Text))
{
systemMemberLevelModel.pubQuantityProv =Convert.ToInt64(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[2].Controls[0]).Text);
}
//求购发布数量
if (!string.IsNullOrEmpty(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[3].Controls[0]).Text))
{
systemMemberLevelModel.pubQuantityPur = Convert.ToInt64(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[3].Controls[0]).Text);
}
//序号
if (!string.IsNullOrEmpty(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[1].Controls[0]).Text))
{
systemMemberLevelModel.sort = Convert.ToInt32(((TextBox)gvNewsList.Rows[e.RowIndex].Cells[1].Controls[0]).Text);
}
try
{
systemMemberLevelBll.Update(systemMemberLevelModel);
gvNewsList.EditIndex = -1;
BindData();
}
catch (System.Data.DataException x)
{
throw new System.Data.DataException(x.ToString());
}
}
//点击控件自带的删除按钮时执行的事件
protected void gvNewsList_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//这里同样是通过这个属性来获取id
string ids = gvNewsList.DataKeys[e.RowIndex].Value.ToString();
try
{
systemMemberLevelBll.Delete(Convert.ToInt64(ids));
BindData();
}
catch (System.Data.DataException x)
{
throw new System.Data.DataException(x.ToString());
}
}


//GridView数据绑定
protected void BindData()
{
IList<SystemMemberLevelModel> list = systemMemberLevelBll.GetAllList();
this.gvNewsList.DataSource = list;
gvNewsList.DataKeyNames = new string[] { "id" };//主键
gvNewsList.DataBind();
}

GridView 编辑修改的更多相关文章
- 抓取GridView "编辑"模式下,TextBox修改后的数值
[FAQ]抓取GridView "编辑"模式下,TextBox修改后的数值 -- ASP.NET专题实务「上集」Ch.10 抓取GridView "编辑"模式下 ...
- GridView编辑删除
A前台代码 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.asp ...
- GridView 编辑、删除 、分页
类似代码都差不多,记录一下,便于以后查看使用. 前台页面: <asp:GridView ID="gdvList" runat="server" AutoG ...
- element UI Cascader 级联选择器 编辑 修改 数组 路径 问题(转载)
来源:https://segmentfault.com/a/1190000014827485 element UI的Cascader级联选择器编辑时 vue.js element-ui 2 eleme ...
- boke练习: category类的编辑修改,总是提示:该分类名称已经存在
boke练习: category类的编辑修改,总是提示:该分类名称已经存在 本利采用的dao是: jpaRepository方式 先看原始代码: category的实体类 @Entity public ...
- GridView编辑删除操作
第一种:使用DataSource数据源中自带的编辑删除方法,这样的不经常使用,在这里就不加说明了. 另外一种:使用GridView的三种事件:GridView1_RowEditing(编辑).Grid ...
- GridView编辑、取消按钮自定义控件
这个需求来自于论坛一位坛友提出的问题,他希望能够自定义编辑.取消按钮,而不是用GridView自带的编辑和取消.这里只当抛砖引玉,提出一些解决方案. 首先在页面前台设置一个GridView. < ...
- EasyUI Datagrid 取编辑修改后的内容
<script type="text/javascript"> $(function () { $('#tt').datagrid({ iconCls: 'icon-e ...
- GridView 编辑,更新,删除 等操作~~
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { GridView1. ...
随机推荐
- C# 使用Linq递归查询数据库遇到的问题及解决方法
User表通常是我们在写"XX管理系统"项目时必须要用到的,有的情况下人员的分类属于树形结构,就是除了最高层和最低层,中间层都有相对的父和子,设计数据库的时候,我们通常会加一个pa ...
- 3 years in Tencent game
心里一直有继续写博文的愿望,却一直被各种借口打断,现在回头一看,已经在腾讯待了3年半之久.3年半是个比较尴尬的时间点,不好意思说自己是游戏从业老兵,但又觉得自己对于行业已经看到比较清楚了:从当年毕业时 ...
- python中隐式的内存共享
在python中,基本上使用的是引用,那么就会造成一个隐式的内存共享,特别是在容器对象中,例如list,dictionary 对于不可变对象,是不会造成隐式的内存共享情况,如下所示: >> ...
- C++11 现代C++风格的新元素--简介
C++11标准推出了很多有用的新特性,本文特别关注那些相比C++98更像是一门新语言的特性,理由是: 这些特性改变了编写C++程序使用的代码风格和习语[译注 1],通常也包括你设计C++函数库的方式. ...
- [转]对Android开发者有益的40条优化建议
下面是开始Android编程的好方法: 找一些与你想做事情类似的代码 调整它,尝试让它做你像做的事情 经历问题 使用StackOverflow解决问题 对每个你像添加的特征重复上述过程.这种方法能够激 ...
- 图解WPF程序打包全过程
首先打开已经完成的工程,如图: 下面开始制作安装程序包. 第一步:[文件]——[新建]——[项目]——安装项目. 名称——可以自己根据要求修改. 位置——是指你要制作的安装文件存放在什么目录内,可以根 ...
- 新工程软连接到原来的工程的out目录后,可以直接编译模块
P508B_App_old_developer/alps$ ln -s ../../P508B_App/alps/out 连接后,第一次编译后要加分支 ./mk hedy89_we_jb2 mm p ...
- c++面试题总结(2)
1. C中static有什么作用 (1)隐藏. 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性,故使用static在不同的文件中定义同名函数和同名变量,而不必担心命 ...
- Cocos2d-x项目移植到WinRT/Win8小记
Cocos2d-x项目移植到WinRT/Win8小记 作者: K.C. 日期: 11/17/2013 Date: 2013-11-17 23:33 Title: Cocos2d-x项目移植到WinRT ...
- iOS KVC/KVO/KVB
看了那么多博客.描述那么复杂,其实KVC很简单,没描述的那么复杂,所以写一篇简单的易于理解的博文,切入正文: 1.KVC底层是通过runtime对method和value操作 比如说如下的一行KVC ...