GridView总结二:GridView自带编辑删除更新

GridView自带编辑删除更新逻辑很简单:操作完,重新绑定。总结总结,防止忘记。。。

效果图:

前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="gridView_bianjidelete.aspx.cs" Inherits="gridView_bianjidelete" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"
            ForeColor="#333333" GridLines="None" OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"
            OnRowUpdating="GridView1_RowUpdating" OnRowCancelingEdit="GridView1_RowCancelingEdit">
                        <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
                        <Columns>
                            <asp:BoundField DataField="ID" HeaderText="产品ID" ReadOnly="True" />
                            <asp:BoundField DataField="name" HeaderText="产品name" />
                            <asp:BoundField DataField="stock" HeaderText="库存" />

                            <asp:CommandField HeaderText="选择" ShowSelectButton="True" />
                            <asp:CommandField HeaderText="编辑" ShowEditButton="True" />
                            <asp:CommandField HeaderText="删除" ShowDeleteButton="True" />
                        </Columns>
                        <RowStyle ForeColor="#000066" />
                        <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="Red" />
                        <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
                        <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
                    </asp:GridView>
    </div>
    </form>
</body>
</html>

  后台代码:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class gridView_bianjidelete : System.Web.UI.Page
{//清清月儿http://blog.csdn.net/21aspnet
    SqlConnection sqlcon;
    SqlCommand sqlcom;
    string strCon = ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            bind();
        }
    }
    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        GridView1.EditIndex = e.NewEditIndex;
        bind();
    }

    //删除之后重新绑定
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        string sqlstr = "delete from product where id=‘" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "‘";
        sqlcon = new SqlConnection(strCon);
        sqlcom = new SqlCommand(sqlstr, sqlcon);
        sqlcon.Open();
        sqlcom.ExecuteNonQuery();
        sqlcon.Close();
        GridView1.DataBind();
        bind();
    }

    //更新
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        sqlcon = new SqlConnection(strCon);
        string sqlstr = "update product set name=‘"
            + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "‘,stock=‘"
            + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "‘ where id=‘"
            + GridView1.DataKeys[e.RowIndex].Value.ToString() + "‘";
        sqlcom = new SqlCommand(sqlstr, sqlcon);
        sqlcon.Open();
        sqlcom.ExecuteNonQuery();
        sqlcon.Close();
        GridView1.EditIndex = -1;
       // GridView1.DataBind();
        bind();
    }

    //取消
    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GridView1.EditIndex = -1;
        bind();
    }

    //绑定
    public void bind()
    {
        string sqlstr = "select * from product p,Uuser u where p.userid=u.id";
        sqlcon = new SqlConnection(strCon);
        SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
        DataSet myds = new DataSet();
        sqlcon.Open();
        myda.Fill(myds, "datatable");
        GridView1.DataSource = myds;
        GridView1.DataKeyNames = new string[] { "id" };//主键
        GridView1.DataBind();
        sqlcon.Close();
    }
}

  效果图:

时间: 2024-10-19 06:09:51

GridView总结二:GridView自带编辑删除更新的相关文章

UITableView 自带编辑删除 自定义按钮

一:UITableView 自带编辑删除 1:实现两个方法即可 #pragma mark   tableView自带的编辑功能 -(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{ //方法实现后,默认实现手势滑动删除的方法 if (editingStyle!

GridView编辑删除操作

第一种:使用DataSource数据源中自带的编辑删除方法,这样的不经常使用,在这里就不加说明了. 另外一种:使用GridView的三种事件:GridView1_RowEditing(编辑).GridView1_RowUpdating(更新).GridView1_RowCancelingEdit(取消编辑).GridView1属性中将DataKeyNames的值设置为主键名,否则找不到索引,这个非常重要哦. 该方法有2种操作,一种是不正确绑定列转换为模板列,第二种是转换为模板列. 这里先说不转换

GridView编辑删除操作 (转载)

第一种:使用DataSource数据源中自带的编辑删除方法,这种不常用,在这里就不加说明了. 第二种:使用GridView的三种事件:GridView1_RowEditing(编辑).GridView1_RowUpdating(更新).GridView1_RowCancelingEdit(取消编辑).GridView1属性中将DataKeyNames的值设置为主键名,否则找不到索引,这个很重要哦. 该方法有2种操作,一种是不对绑定列转换为模板列,另外一种是转换为模板列. 这里先说不转换为模板列的

ASP.NET编辑与更新数据(非GridView控件实现)

Insus.NET在实现<ASP.NET开发,从二层至三层,至面向对象 (5)>http://www.cnblogs.com/insus/p/3880606.html 中,没有把数据编辑与更新功能一起演示,留下给网友们自由发挥,但是还是有网友想看看Insus.NET用实现方法. 以前Insus.NET的做法,是在GridView控件中进行.如这篇视频教程<GridView Edit Update Cancel Delete>http://www.cnblogs.com/insus/

根据某条件给GridView符合条件的值画上删除线

如博文标题,根据某些条件对GridView控件中,对符合条件的值画上删除线效果.实现这些要求,只人捕获到哪些符合要求的数据即可.GridView控件是在TemplateField模版显示数据,Insus.NET并没有使用任一控件,如label或literal等控件来呈现数据.稍后在写OnRowDataBound事件,会教大家怎样去捕获取需要的数据. 下面是对GridView控件时行数据绑定,由于在Insus.NET博客已经无数次有写到怎样创建数据,写存储过程,创建对象(类class),这些在此篇

ios 8 UITableView 编辑删除状态不点击“删除”,页面假死临时解决方案

ios8 UITableView 中编辑删除状态(isEditing:YES)不点击"删除"按钮点击其他位置,UITableView会假死,不可滑动,点击无效而userInteractionEnabled:YES,isEditing:NO(图片三--->图片四): 而低版本(如ios5)中编辑删除状态不点击"删除" UITableView会回到编辑状态(图片三--->图片二). 解决办法:当ios8 编辑删除状态不点击"删除"按钮点击

windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) 简单说几句 在mongodb中3元素:db(数据库).collection(集合).document(文档) 其中collection类似于数据库中的表,document类似于行,这样一来我们就将内容对比起来记忆学习了. 数据格式 MongoDB documents是BSON格式(一种类json的一种二进制形式的存

Elasticsearch Java API (二): index创建删除 cluster管理

Elasticsearch Java API (二): index创建删除 cluster管理  elastic官网有权威的java api 英文的 需要耐心看 这里整理下基本操作 创建maven工程添加依赖 <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>transport</artifactId> <version>5.2.2</ver

WinCE下带编辑与下拉功能的ListCtrl

CListCtrl带编辑功能与下拉功能的本质即在列表中嵌入CEdit和CComboBox控件,其具体代码如下所示://InPlaceEdit.h#if !defined(AFX_INPLACEEDIT_H__175AEDFF_731E_4721_8399_DE406A465861__INCLUDED_)#define AFX_INPLACEEDIT_H__175AEDFF_731E_4721_8399_DE406A465861__INCLUDED_ #if _MSC_VER > 1000#pra