Gridview中的选择、删除、编辑、更新、取消留着备用。
后台程序:
public partial class tw2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
this.createdb();
}
}
private void createdb()
{
SqlConnection cn = new SqlConnection("server=.;database=zhang;uid=sa;pwd=410"); //(Data Source =服务器;Initial Catalog=数据库;Integrated Security=True")本地用户登录
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand("select * from chang", cn);
DataSet ds = new DataSet();
adp.Fill(ds, "chang");
this.GridView1.DataKeyNames = new string[] { "changid" }; //定义主键
this.GridView1.DataSource = ds.Tables[0].DefaultView;
this.GridView1.DataBind();
cn.Close(); }
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) //取消按钮
{
GridView1.EditIndex = -1;
this.createdb();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) //编辑按钮
{
GridView1.EditIndex = e.NewEditIndex;
this.createdb();
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) //选择按钮
{
int id = Convert.ToInt32(e.CommandArgument); //取行索引号
string txt = GridView1.DataKeys[id].Value.ToString(); //取主键的值
Response.Write(txt);
// this.createdb(); }
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) //删除按钮
{
//在删除事件中获取绑定列的值 GridView1.Rows[e.RowIndex].Cells[1].Text.ToString();
SqlConnection cn = new SqlConnection("server=.;database=zhang;uid=sa;pwd=410");
cn.Open();
SqlCommand cm=new SqlCommand("delete from chang where changid=" +GridView1.DataKeys[e.RowIndex].Value,cn); //e.RowIndex取本行索引号,
cm.ExecuteNonQuery();
cn.Close();
GridView1.EditIndex = -1;
this.createdb(); }
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) //更新按钮
{
GridViewRow row = GridView1.Rows[e.RowIndex];
TextBox box = (TextBox)row.Cells[2].Controls[0];
Response.Write(box.Text);
try
{
SqlConnection cn = new SqlConnection("server=.;database=zhang;uid=sa;pwd=410");
cn.Open();
SqlCommand cm = new SqlCommand("update chang set chang1='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',chang2='" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where changid=" + GridView1.DataKeys[e.RowIndex].Value, cn); //列的编号是从1,这里更新的是第二列和第三列所以cell[2],cell[3],而行的索引是从0开始的
cm.ExecuteNonQuery();
GridView1.EditIndex = -1;
this.createdb();
cn.Close();
//在更新事件中获取其他绑定列的值
// GridView1.Rows[e.RowIndex].Cells[9].Text.ToString();
//由于隐藏列不能获取其值,可以用以下方法:
//1.先定义个隐藏样式
<style type="text/css">
.hidden { display:none;}
</style>
2.在隐藏列的HTML标记里引用这个样式,代码如下:
<asp:BoundField DataField="num" ReadOnly="True">
<HeaderStyle CssClass="hidden" />
<ItemStyle CssClass="hidden" />
</asp:BoundField>
//这样就可以获取隐藏列的值了,比如修改出库数量的时候要先判断库存等。
}
catch (Exception exc)
{
Response.Write(exc.Message);
}
}
}
Gridview中的选择、删除、编辑、更新、取消留着备用。的更多相关文章
- gridview的编辑,更新,取消,自动分页等
gridview编辑列,把左下角的"自动生成字段"的复选框的勾去掉 添加boundfield(绑定列)将其datafield设置为productname,headertext设置为 ...
- Gridview中运用CommandField 删除控件时注意点
我在gridview1 <编辑列>里面添加了一个<CommandField 删除>的控件,之后在gridview1的事件<RowDeleting>事件下 写了一段删 ...
- GridView中CheckBox的用法
以下是我在GridView中控制CheckBox的全选/取消全选,根据子CheckBox处理全选CheckBox状态的操作并获取所选GridView中所选行的列的值. 脚本代码: <scr ...
- GridView中的编辑和删除按钮,执行更新和删除代码之前的更新提示或删除提示
在GridView中,可以通过设计界面GridViewr任务->编辑列->CommandField,很简单的添加的编辑和删除按钮 在前台源码中,可以看到GridView自动生成了两个列. ...
- ASP.net中GridView中增加一行记录并默认显示为编辑状态
//添加 protected void Button1_Click(object sender, EventArgs e) { DataSet ds = (DataSet)pa.GetDataSet( ...
- AngularJS进阶(十一)AngularJS实现表格数据的编辑,更新和删除
AngularJS实现表格数据的编辑,更新和删除 效果 实现 首先,我们先建立一些数据,当然你可以从你任何地方读出你的数据 var app = angular.module('plunker', [' ...
- [原创]MYSQL中利用外键实现级联删除和更新
MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...
- MySQL中利用外键实现级联删除、更新
MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定在删除.更新父表时,对子表进行的相应操作 ...
- openerp模块收藏 移除下拉选择列表中的“创建并编辑”链接(转载)
移除下拉选择列表中的“创建并编辑”链接 原文:http://shine-it.net/index.php/topic,5990.0.html 有时希望下拉列表中列出的项是与主表某个字段关联的,用户只能 ...
随机推荐
- RTX——第19章 SVC 中断方式调用用户函数(后期补历程)
以下内容转载自安富莱电子: http://forum.armfly.com/forum.php 本章节为大家讲解如何采用 SVC 中断方式调用用户函数. 当用户将 RTX 任务设置为工作在非特权级模式 ...
- 基于jQuery+CSS3实现人物跳动特效
分享一款基于jQuery+CSS3实现人物跳动特效.这是一款类似gif图片效果的CSS3动画特效代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class=& ...
- spring security 注解@EnableGlobalMethodSecurity详解
1.Spring Security默认是禁用注解的,要想开启注解,需要在继承WebSecurityConfigurerAdapter的类上加@EnableGlobalMethodSecurity注解 ...
- ContentType和@ResponseBody
ContentType 为 application/x-www-form-urlencoded (表单)时,入参前不需要加@ResponseBody: ContentType 为 applicatio ...
- Linux下的微秒级别的定时器
/* * @FileName: test_sleep.c * @Author: wzj * @Brief: * * * @History: * * @Date: 2012年02月07日星期二22:20 ...
- Java编程的逻辑 (60) - 随机读写文件及其应用 - 实现一个简单的KV数据库
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...
- Ubuntu16.04怎么将桌面左侧的启动器移动到屏幕底部
与其他 Linux 发行版不同,Ubuntu 多年来一直使用 Unity 做桌面环境,该环境的最突出特点就是桌面左侧有一个启动器栏(Launcher).从 16.04 版本开始,Ubuntu 提供了一 ...
- ansible 配置了端口在host文件但是还要走22 ip:60001 ansible_ssh_port=60001
fatal: [101.251.194.102]: UNREACHABLE! => {"changed": false, "msg": "Fai ...
- 【javascript】js 获取 url 后的参数值
以前写过一篇类似的博文(提取 url 的搜索字符串中的参数),但是个人觉得使用起来不是很方便,今天抽空重新写了个函数,该函数代码更加简洁. //获取 url 后的参数值 function getUrl ...
- oracle的启动和停用
1.开始-运行-cmd-确定 2.cmd页面,输入set ORACLE_SID=(你的数据库实例名),回车,执行 3.继续输入‘sqlplus/nolog’,敲击回车键 4.sql输入栏,输入‘con ...