欢迎光临
我们一直在努力

Datagrid分页、排序、删除代码-ASP教程,数据库相关

建站超值云服务器,限时71元/月

<%@ page language="c#" codebehind="default.aspx.cs" autoeventwireup="false" inherits="datagrid.webform1" %>

<!doctype html public "-//w3c//dtd html 4.0 transitional//en" >

<html>

<head>

<title>webform1</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 ms_positioning="gridlayout">

<form id="form1" method="post" runat="server">

<script>

window.resizeto(screen.width,screen.height-30);

</script>

<asp:datagrid id="datagrid1" style="z-index: 101; left: 48px; position: absolute; top: 56px" runat="server"

horizontalalign="center" datakeyfield="au_id" pagesize="3" allowpaging="true" width="408px"

autogeneratecolumns="false" allowsorting="true">

<columns>

<asp:boundcolumn datafield="au_id" sortexpression="au_id" readonly="true" headertext="id"></asp:boundcolumn>

<asp:boundcolumn datafield="city" sortexpression="city" readonly="true" headertext="城市"></asp:boundcolumn>

<asp:templatecolumn sortexpression="au_id" headertext="操作">

<itemtemplate>

<asp:linkbutton runat="server" id="delbutton" text="删除" commandname="delete" causesvalidation="false"></asp:linkbutton>

</itemtemplate>

</asp:templatecolumn>

</columns>

<pagerstyle visible="false" pagebuttoncount="6"></pagerstyle>

</asp:datagrid><asp:label id="label1" style="z-index: 106; left: 312px; position: absolute; top: 24px" runat="server"></asp:label><asp:linkbutton id="lbtfir" style="z-index: 105; left: 72px; position: absolute; top: 24px" runat="server">首页</asp:linkbutton><asp:linkbutton id="lbtlast" style="z-index: 104; left: 256px; position: absolute; top: 24px" runat="server">尾页</asp:linkbutton><asp:linkbutton id="lbtpre" style="z-index: 103; left: 192px; position: absolute; top: 24px" runat="server">上一页</asp:linkbutton><asp:linkbutton id="lbtnex" style="z-index: 102; left: 120px; position: absolute; top: 24px" runat="server">下一页</asp:linkbutton></form>

</body>

</html>

代码

default.aspx.cs

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 datagrid

{

/// <summary>

/// webform1 的摘要说明。

/// </summary>

public class webform1 : system.web.ui.page

{

protected system.web.ui.webcontrols.linkbutton lbtnex;

protected system.web.ui.webcontrols.linkbutton lbtpre;

protected system.web.ui.webcontrols.linkbutton lbtlast;

protected system.web.ui.webcontrols.linkbutton lbtfir;

protected system.web.ui.webcontrols.label label1;

protected system.web.ui.webcontrols.datagrid datagrid1;

public string sortfield;

private void page_load(object sender, system.eventargs e)

{

// 在此处放置用户代码以初始化页面

if(!page.ispostback)

{

databind();

}

}

public void databind()

{

sqlconnection con = new sqlconnection("server=it003;database=pubs;uid=sa;pwd=");

con.open();

string sql="select * from authors";

sqldataadapter ada = new sqldataadapter(sql,con);

dataset ds = new dataset();

ada.fill(ds,"temp");

ds.tables["temp"].defaultview.sort=sortfield;

datagrid1.datasource=ds.tables["temp"].defaultview;

datagrid1.databind();

ada.dispose();

con.close();

label1.text="共"+ds.tables["temp"].defaultview.count.tostring()+"条记录,"+datagrid1.pagecount.tostring()+"页,第"+(datagrid1.currentpageindex+1).tostring()+"页,本页"+datagrid1.items.count.tostring()+"条记录";

}

#region web 窗体设计器生成的代码

override protected void oninit(eventargs e)

{

//

// codegen: 该调用是 asp.net web 窗体设计器所必需的。

//

initializecomponent();

base.oninit(e);

}

/// <summary>

/// 设计器支持所需的方法 – 不要使用代码编辑器修改

/// 此方法的内容。

/// </summary>

private void initializecomponent()

{

this.datagrid1.sortcommand += new system.web.ui.webcontrols.datagridsortcommandeventhandler(this.datagrid1_sortcommand);

this.datagrid1.deletecommand += new system.web.ui.webcontrols.datagridcommandeventhandler(this.datagrid1_deletecommand_1);

this.datagrid1.itemdatabound += new system.web.ui.webcontrols.datagriditemeventhandler(this.datagrid1_itemdatabound_1);

this.lbtfir.click += new system.eventhandler(this.lbtfir_click);

this.lbtlast.click += new system.eventhandler(this.lbtlast_click);

this.lbtpre.click += new system.eventhandler(this.lbtpre_click);

this.lbtnex.click += new system.eventhandler(this.lbtnex_click);

this.load += new system.eventhandler(this.page_load);

}

#endregion

private void datagrid1_pageindexchanged(object source, system.web.ui.webcontrols.datagridpagechangedeventargs e)

{

datagrid1.currentpageindex=e.newpageindex;

databind();

}

private void lbtnex_click(object sender, system.eventargs e)

{

if(datagrid1.currentpageindex<datagrid1.pagecount-1)

{

datagrid1.currentpageindex++;

databind();

}

}

private void lbtpre_click(object sender, system.eventargs e)

{

if(datagrid1.currentpageindex>0)

{

datagrid1.currentpageindex–;

databind();

}

}

private void lbtfir_click(object sender, system.eventargs e)

{

datagrid1.currentpageindex=0;

databind();

}

private void lbtlast_click(object sender, system.eventargs e)

{

datagrid1.currentpageindex=datagrid1.pagecount-1;

databind();

}

private void datagrid1_deletecommand_1(object source, system.web.ui.webcontrols.datagridcommandeventargs e)

{

try{

string id = (string)datagrid1.datakeys[(int) e.item.itemindex];

string sql="delete from authors where au_id="+convert.tostring(id)+"";

sqlconnection con = new sqlconnection("server=it003;database=pubs;uid=sa;pwd=");

con.open();

sqlcommand com=new sqlcommand(sql,con);

com.executenonquery();

com.dispose();

con.close();

if (datagrid1.items.count == 1 && datagrid1.currentpageindex > 0)

{

datagrid1.currentpageindex–;

}

databind();

}

catch(exception ex)

{

response.write("<script>alert("+ex.message+")</script>");

//page.registerstartupscript("","<script>alert("+ex.message+")</script>");

}

}

private void datagrid1_itemdatabound_1(object sender, system.web.ui.webcontrols.datagriditemeventargs e)

{

if(e.item.itemindex<0) return;

e.item.attributes.add("onmouseover","currentcolor=this.style.backgroundcolor;this.style.backgroundcolor=cccccc");

e.item.attributes.add("onmouseout","this.style.backgroundcolor=currentcolor");

linkbutton lbtndel = (linkbutton)e.item.findcontrol("delbutton");

string id = (string)datagrid1.datakeys[(int) e.item.itemindex];

lbtndel.attributes.add("onclick", "return confirm(您真的要删除"+id+ " 行吗?);");

}

private void datagrid1_sortcommand(object source, system.web.ui.webcontrols.datagridsortcommandeventargs e)

{

sortfield=(string)e.sortexpression;

databind();

}

}

}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Datagrid分页、排序、删除代码-ASP教程,数据库相关
分享到: 更多 (0)

相关推荐

  • 暂无文章