//DataGrid_1.aspx
**************************************************************************
<
body
MS_POSITIONING
="GridLayout"
>
< form id ="Form1" method ="post" runat ="server" >
< asp:datagrid id ="Dg1" style ="Z-INDEX: 101; LEFT: 7px; POSITION: absolute; TOP: 8px" runat ="server"
HeaderStyle-HorizontalAlign ="Center" HeaderStyle-Font-Bold ="True" HeaderStyle-BackColor ="#6699cc"
AutoGenerateColumns ="false" ItemStyle-HorizontalAlign ="Center" >
< Columns >
< asp:EditCommandColumn HeaderText ="编辑" EditText ="编辑" CancelText ="取消" UpdateText ="更新" ItemStyle-Width ="100" ></ asp:EditCommandColumn >
< asp:ButtonColumn HeaderText ="删除" ButtonType ="LinkButton" Text ="删除" CommandName ="Delete" ItemStyle-Width ="60" ></ asp:ButtonColumn >
< asp:BoundColumn ReadOnly ="True" HeaderText ="用户编号" DataField ="customerid" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="companyname" HeaderText ="公司名" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="contactname" HeaderText ="联系名" ></ asp:BoundColumn >
</ Columns >
</ asp:datagrid >
< asp:Label id ="Label1" style ="Z-INDEX: 102; LEFT: 14px; POSITION: absolute; TOP: 237px" runat ="server" > Label </ asp:Label ></ form >
</ body >
//DataGrid_1.aspx.cs
< form id ="Form1" method ="post" runat ="server" >
< asp:datagrid id ="Dg1" style ="Z-INDEX: 101; LEFT: 7px; POSITION: absolute; TOP: 8px" runat ="server"
HeaderStyle-HorizontalAlign ="Center" HeaderStyle-Font-Bold ="True" HeaderStyle-BackColor ="#6699cc"
AutoGenerateColumns ="false" ItemStyle-HorizontalAlign ="Center" >
< Columns >
< asp:EditCommandColumn HeaderText ="编辑" EditText ="编辑" CancelText ="取消" UpdateText ="更新" ItemStyle-Width ="100" ></ asp:EditCommandColumn >
< asp:ButtonColumn HeaderText ="删除" ButtonType ="LinkButton" Text ="删除" CommandName ="Delete" ItemStyle-Width ="60" ></ asp:ButtonColumn >
< asp:BoundColumn ReadOnly ="True" HeaderText ="用户编号" DataField ="customerid" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="companyname" HeaderText ="公司名" ></ asp:BoundColumn >
< asp:BoundColumn DataField ="contactname" HeaderText ="联系名" ></ asp:BoundColumn >
</ Columns >
</ asp:datagrid >
< asp:Label id ="Label1" style ="Z-INDEX: 102; LEFT: 14px; POSITION: absolute; TOP: 237px" runat ="server" > Label </ asp:Label ></ form >
</ body >
**************************************************************************
using
System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Configuration;
using DBF_Center;
namespace TestCenter
{
/**//// <summary>
/// *******************************DataGrid全部功能实现****************************************
/// </summary>
public class DataGrid_1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.DataGrid Dg1;
/**//// <summary>
/// 数据邦定函数
/// </summary>
/// <param name="sortField">用于排序的字段</param>
public void BindGrid(string sortField)
{
//连接数据库,填充DataSet
string constr=System.Configuration.ConfigurationSettings.AppSettings["Connectstring"];
SqlConnection conn=new SqlConnection(constr);
string commstr="select customerid,companyname,contactname from customer";
SqlDataAdapter ad=new SqlDataAdapter(commstr,conn);
DataSet dst=new DataSet();
ad.Fill(dst);
//string pd_a="select * from newstype order by t_id desc";
DataView source=new DataView(dst.Tables[0]);
source.Sort=sortField;
Dg1.DataSource=source;
Dg1.DataBind();
}
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
this.BindGrid("customerid");//数据邦定,按customerid排序
}
Dg1.PagerStyle.Mode=PagerMode.NumericPages;//显示默认的页码为数字
/**//*
* 以上下页的形式显示页码
Dg1.PagerStyle.Mode=PagerMode.NextPrev;
Dg1.PagerStyle.NextPageText="下一页";
Dg1.PagerStyle.PrevPageText="上一页";
*/
Dg1.PagerStyle.Position=0;//显示起始页码
Dg1.PagerStyle.PageButtonCount=10;//显示显示页数
Dg1.PagerStyle.Visible=true;//显示默认页码数
Dg1.PageSize=6;//每页显示信息数
Dg1.AllowPaging=true;
Dg1.AllowSorting=true;
Dg1.AutoGenerateColumns=false;
}
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Dg1.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.ItemCreate_Grid);
this.Dg1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Pager_Grid);
this.Dg1.CancelCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Cancel_Grid);
this.Dg1.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Edit_Grid);
this.Dg1.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.Sort_Grid);
this.Dg1.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Update_Grid);
this.Dg1.DeleteCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Delete_Grid);
this.Dg1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.ItemBound_Grid);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//实现自动排序
private void Sort_Grid(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
this.BindGrid((string)e.SortExpression);
}
//编辑按钮的实现
private void Edit_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Dg1.EditItemIndex=e.Item.ItemIndex;
this.BindGrid("customerid");
}
//取消按钮的实现
private void Cancel_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Dg1.EditItemIndex=-1;
this.BindGrid("customerid");
}
//更新数据
private void Update_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
TextBox C_name=(TextBox)e.Item.Cells[3].Controls[0];
//TextBox C_nid=(TextBox)e.Item.Cells[2].Controls[0];
TextBox C_cname=(TextBox)e.Item.Cells[4].Controls[0];
string C_id=e.Item.Cells[2].Text.ToString();
if(C_name.Text.ToString()=="")
{
Response.Write("<script LANGUAGE='javascript'>alert('请输入确认输入正确!');history.go(-1);</script>");
}
else
{
string up_sql="update customer set Companyname='"+C_name.Text.ToString()+"',contactname='"+C_cname.Text.ToString()+"' where customerid='"+C_id+"'";
dbcontrol.ExecuteSql(up_sql);
Label1.Text=up_sql;
}
Dg1.EditItemIndex=-1;
this.BindGrid("customerid");
}
//自动分页
private void Pager_Grid(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
Dg1.CurrentPageIndex=e.NewPageIndex;
BindGrid("customerid");
}
//Item事件
private void ItemCreate_Grid(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem||e.Item.ItemType==ListItemType.Item)
{
LinkButton btnDel=(LinkButton)e.Item.Cells[1].Controls[0];
btnDel.Attributes.Add("onClick","JavaScript:return confirm('确认要删除此行的信息?')");
btnDel.Text="删除";
}
}
//执行删除
private void Delete_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string del_sql="delete from customer where customerid='"+e.Item.Cells[2].Text+"'";
dbcontrol.ExecuteSql(del_sql);
Dg1.EditItemIndex=-1;
BindGrid("customerid");
}
//行随鼠标移动变色
private void ItemBound_Grid(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onmouseover","this.style.backgroundColor='#fafafa'");
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor='white'");
}
}
}
}
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Configuration;
using DBF_Center;
namespace TestCenter
{
/**//// <summary>
/// *******************************DataGrid全部功能实现****************************************
/// </summary>
public class DataGrid_1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.DataGrid Dg1;
/**//// <summary>
/// 数据邦定函数
/// </summary>
/// <param name="sortField">用于排序的字段</param>
public void BindGrid(string sortField)
{
//连接数据库,填充DataSet
string constr=System.Configuration.ConfigurationSettings.AppSettings["Connectstring"];
SqlConnection conn=new SqlConnection(constr);
string commstr="select customerid,companyname,contactname from customer";
SqlDataAdapter ad=new SqlDataAdapter(commstr,conn);
DataSet dst=new DataSet();
ad.Fill(dst);
//string pd_a="select * from newstype order by t_id desc";
DataView source=new DataView(dst.Tables[0]);
source.Sort=sortField;
Dg1.DataSource=source;
Dg1.DataBind();
}
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
this.BindGrid("customerid");//数据邦定,按customerid排序
}
Dg1.PagerStyle.Mode=PagerMode.NumericPages;//显示默认的页码为数字
/**//*
* 以上下页的形式显示页码
Dg1.PagerStyle.Mode=PagerMode.NextPrev;
Dg1.PagerStyle.NextPageText="下一页";
Dg1.PagerStyle.PrevPageText="上一页";
*/
Dg1.PagerStyle.Position=0;//显示起始页码
Dg1.PagerStyle.PageButtonCount=10;//显示显示页数
Dg1.PagerStyle.Visible=true;//显示默认页码数
Dg1.PageSize=6;//每页显示信息数
Dg1.AllowPaging=true;
Dg1.AllowSorting=true;
Dg1.AutoGenerateColumns=false;
}
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Dg1.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.ItemCreate_Grid);
this.Dg1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Pager_Grid);
this.Dg1.CancelCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Cancel_Grid);
this.Dg1.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Edit_Grid);
this.Dg1.SortCommand += new System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.Sort_Grid);
this.Dg1.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Update_Grid);
this.Dg1.DeleteCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.Delete_Grid);
this.Dg1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.ItemBound_Grid);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
//实现自动排序
private void Sort_Grid(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
this.BindGrid((string)e.SortExpression);
}
//编辑按钮的实现
private void Edit_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Dg1.EditItemIndex=e.Item.ItemIndex;
this.BindGrid("customerid");
}
//取消按钮的实现
private void Cancel_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Dg1.EditItemIndex=-1;
this.BindGrid("customerid");
}
//更新数据
private void Update_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
TextBox C_name=(TextBox)e.Item.Cells[3].Controls[0];
//TextBox C_nid=(TextBox)e.Item.Cells[2].Controls[0];
TextBox C_cname=(TextBox)e.Item.Cells[4].Controls[0];
string C_id=e.Item.Cells[2].Text.ToString();
if(C_name.Text.ToString()=="")
{
Response.Write("<script LANGUAGE='javascript'>alert('请输入确认输入正确!');history.go(-1);</script>");
}
else
{
string up_sql="update customer set Companyname='"+C_name.Text.ToString()+"',contactname='"+C_cname.Text.ToString()+"' where customerid='"+C_id+"'";
dbcontrol.ExecuteSql(up_sql);
Label1.Text=up_sql;
}
Dg1.EditItemIndex=-1;
this.BindGrid("customerid");
}
//自动分页
private void Pager_Grid(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
Dg1.CurrentPageIndex=e.NewPageIndex;
BindGrid("customerid");
}
//Item事件
private void ItemCreate_Grid(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem||e.Item.ItemType==ListItemType.Item)
{
LinkButton btnDel=(LinkButton)e.Item.Cells[1].Controls[0];
btnDel.Attributes.Add("onClick","JavaScript:return confirm('确认要删除此行的信息?')");
btnDel.Text="删除";
}
}
//执行删除
private void Delete_Grid(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string del_sql="delete from customer where customerid='"+e.Item.Cells[2].Text+"'";
dbcontrol.ExecuteSql(del_sql);
Dg1.EditItemIndex=-1;
BindGrid("customerid");
}
//行随鼠标移动变色
private void ItemBound_Grid(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onmouseover","this.style.backgroundColor='#fafafa'");
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor='white'");
}
}
}
}