或许大家会说,网上已经很多类似文章了,包括孟子的,为什么要再写一次?
我想我们不仅仅要会实现,更多的是需要理解。
下面先帖出代码,再分析一下其中的一些关键代码。
数据库表名:tb1,其中有3个字段,分别是ID自增的主键、vName varchar(50)、iAge int
(以下代码没有做任何错误捕获处理)
前台
<%...@ Page language="c#" Codebehind="WebForm5.aspx.cs" AutoEventWireup="false" Inherits="csdn.WebForm5" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm5</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<asp:textbox id="TextBox1" runat="server" Width="88px"></asp:textbox>
<asp:TextBox id="TextBox2" runat="server" Width="40px"></asp:TextBox>
<asp:Button id="Button1" runat="server" Text="添加"></asp:Button>
<asp:datagrid id="DataGrid1" runat="server" AutoGenerateColumns="False" DataKeyField="ID" AllowPaging="True"
PageSize="5" OnEditCommand="edit" OnCancelCommand="cancel" OnUpdateCommand="update">
<Columns>
<asp:TemplateColumn HeaderText="姓名">
<ItemTemplate>
<%...# DataBinder.Eval(Container.DataItem,"vName") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="name" Runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"vName") %>' Width="88px">
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="年龄">
<ItemTemplate>
<%...# DataBinder.Eval(Container.DataItem,"iAge") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="age" Runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"iAge") %>' Width="40px">
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
<asp:ButtonColumn Text="删除" CommandName="del"></asp:ButtonColumn>
</Columns>
<PagerStyle Mode="NumericPages"></PagerStyle>
</asp:datagrid></form>
</body>
</HTML>
后台
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace csdn
...{
/**//// <summary>
/// WebForm5 的摘要说明。
/// </summary>
public class WebForm5 : System.Web.UI.Page
...{
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.TextBox TextBox2;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
...{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
...{
SetBind();
}
}
protected void SetBind()
...{
SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
SqlDataAdapter da=new SqlDataAdapter("select * from tb1",conn);
DataSet ds=new DataSet();
da.Fill(ds,"table1");
this.DataGrid1.DataSource=ds.Tables["table1"];
this.DataGrid1.DataBind();
}
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
...{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
...{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.DataGrid1.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemCreated);
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
...{
SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
SqlCommand comm=new SqlCommand("insert into tb1 (vName,iAge) values (@vName,@iAge)",conn);
SqlParameter parm1=new SqlParameter("@vName",SqlDbType.NVarChar,50);
parm1.Value=this.TextBox1.Text;
SqlParameter parm2=new SqlParameter("@iAge",SqlDbType.Int);
parm2.Value=this.TextBox2.Text;
comm.Parameters.Add(parm1);
comm.Parameters.Add(parm2);
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
SetBind();
}
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
...{
if(e.CommandName=="del")
...{
SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["conn"]);
SqlCommand comm=new SqlCommand("delete from tb1 where ID=@id",conn);
SqlParameter parm1=new SqlParameter("@id",SqlDbType.Int);
parm1.Value=this.DataGrid1.DataKeys[e.Item.ItemIndex];
comm.Parameters.Add(parm1);
conn.Open();
comm.ExecuteNonQuery();
conn.Close();
SetBind();
}
}
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
...{
this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
SetBind();
}
protected void edit(object sender,DataGridCommandEventArgs e)
...{
this.DataGrid1.EditItemIndex=e.Item.ItemIndex;
SetBind();
}
protected void cancel(object sender,DataGridCommandEventArgs e)
...{
w
分享到:
相关推荐
使用SSM框架+EasyUI DataGrid数据表格实现了基本的增删改查,以及对数据分页,排序功能的实现。是一个对于后台管理的很好的例子,因为一般企业后台管理都是使用EasyUI等框架快速搭建,而且DataGrid是EasyUI最重要的...
Wpf 做的一个DataGrid的Demo,有增删改查 分页、自定义控件相关等功能,拿去就可以直接用
DataGrid简单增删改查
需要一个对datagrid控件进行的操作,不需要别的界面,自己动手做了一个。 本例子是wpf中datagrid的增加修改,对于datagrid中的canuseraddrows=true,对当前空白行进行的添加数据,修改时,鼠标离开焦点可自动更新...
NULL 博文链接:https://wangmengbk.iteye.com/blog/754872
DataGrid数据增删及分页演示 .rar
DataGrid控件 添加、删除、修改、查询 ,基础知识适合入门。
DataGrid增删改查(EasyUI)示例源码 源码描述: 源码示例前台套用easyui,利用ajax调用sql数据库对学生信息表进行增删改查 兼容ie,火狐和谷歌,删除在 欢迎感兴趣用户下载学习
DataGrid增删改查(EasyUI)示例源码
wpf通过datagrid操作数据库,实现datagrid增删改操作。
源码示例前台套用easyui,利用ajax调用sql数据库对学生信息表进行增删改查 兼容ie,火狐和谷歌,删除在 ();">删除调用一下删除的方法即可;绝对可用,提供这方面学习和开发的朋友!
在DataGrid里执行分页增加删除修改分页
数据库管理系统,不管是桌面版,还是网页版,我觉得最重要的功能是:增删改查+分页。文档里面的例子就是asp.net web form + easy ui 的datagrid。简单的演示了这五个重要功能。请用vs2010运行,数据库没有给出。
商业编程-源码-DataGrid数据增删及分页演示.zip
用于myeclipse软件下ssm框架 easyUIdatagrid增删改查
struts2+ajax+easyui+json+datagrid增,删,改,查,分页,排序,有数据库
C#winform窗体应用程序使用 XML 与 DataGrid空间实现增删改查
全新原创,后台数据库是access,使用datagrid实现基本的增删查改,网上搜索过,还没找到一个这样的demo。 使用其他数据源的可以修改连接字符串,查询语句修改一下日期字符串的引用方式就可以了,这个修改量应该很小...