前台 aspx 文件: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="List.aspx.cs" Inherits="List" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server"> <title></title> <link href="css.css" mce_href="css.css" rel="stylesheet" type="text/css" /> <mce:script language="javascript" type="text/javascript"><!-- function disOpen(c) { var xposition=0; var yposition=0; var width=600; var height=550; var url=c; url=url+"?pagesize="+document.forms(0).hidpagesize.value; if ((parseInt(navigator.appVersion) >= 4 )) { xposition = (screen.width - width) / 2; yposition = (screen.height - height) / 2; } var theproperty= "width=" + width + "," + "height=" + height + "," + "location=0," + "menubar=0," + "resizable=1," + "scrollbars=1," + "status=0," + "titlebar=0," + "toolbar=0," + "hotkeys=0," + "screenx=" + xposition + "," + "screeny=" + yposition + "," + "left=" + xposition + "," + "top=" + yposition; window.open(url,null,theproperty ); } function DEL(N) { if(window.confirm("Are you sure you wish to delete?")==true) { document.forms(0).hidID.value = N; document.forms(0).hidopMode.value = "1"; document.forms(0).submit(); } } function CheckMsg() { if(document.forms(0).hidsysMsg.value.length!=0) { alert(document.forms(0).hidsysMsg.value); return; } if(document.forms(0).hidIsDel.value.length>0) { if(window.confirm("Are you sure you wish to delete?")==true) { document.forms(0).hidopMode.value = "2"; document.forms(0).hidIsDel.value=""; document.forms(0).submit(); } } } // --></mce:script> </head> <body οnlοad="CheckMsg();"> <form id="form1" runat="server"> <div> <table border="0" cellpadding="0" cellspacing="0" height="22" width="100%"> <tr> <td colspan="3"> <br /> <table align="center" class="d" width="60%"> <tr bgcolor="#ACB4CE"> <td class="a" width="30%" style="height: 22px"> <asp:Label ID="lbpageof" runat="server" Text="Label" Width="176px"></asp:Label> <td align=center> <asp:DropDownList ID="DropDownList1" runat="server" Width="50%" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" CssClass="b"> <asp:ListItem Value="5">5 per page</asp:ListItem> <asp:ListItem Selected="True" Value="10">10 per page</asp:ListItem> <asp:ListItem Value="50">50 per page</asp:ListItem> </asp:DropDownList> <asp:LinkButton ID="Sequence" runat="server" OnClientClick="javascript:disOpen('open.aspx');">Sequence</asp:LinkButton></td> <td class="a" style="width: 85px; height: 22px;"> <asp:LinkButton ID="lbpre" runat="server" CommandArgument="prev" OnClick="PagerButtonClick" >Previous</asp:LinkButton></td> <td class="a" style="width: 85px; height: 22px;"> <asp:LinkButton ID="lbnext" runat="server" CommandArgument="next" OnClick="PagerButtonClick">Next</asp:LinkButton></td> </tr> <tr> <td colspan=4> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="Black" GridLines="Vertical" BackColor="White" BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" Width="100%" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging" OnSorting="GridView1_Sorting" AllowSorting="True" OnRowDataBound="GridView1_RowDataBound" OnRowCreated="GridView1_RowCreated"> <Columns> <asp:BoundField DataField="id" HeaderText="ID" SortExpression="id" /> <asp:BoundField HeaderText="Sequence" DataField="sequence" SortExpression="sequence" > <ItemStyle HorizontalAlign="Left" /> </asp:BoundField> <asp:BoundField DataField="emailtype" HeaderText="EMAIL LOG TYPE TYPE ID" SortExpression="emailtype"> <ItemStyle HorizontalAlign="Left" /> </asp:BoundField> <asp:BoundField DataField="Create_Date" HeaderText="Date" SortExpression="Create_Date"> <ItemStyle HorizontalAlign="Left" /> </asp:BoundField> <asp:BoundField DataField="Create_Time" HeaderText="Time" SortExpression="Create_Time"> <ItemStyle HorizontalAlign="Left" /> </asp:BoundField> <asp:HyperLinkField DataNavigateUrlFields="ID" DataNavigateUrlFormatString="~/test_Edit.aspx?id={0}" HeaderText="Edit" Text="<img src="images/edit.gif" mce_src="images/edit.gif" border='0'>" > <ItemStyle HorizontalAlign="Center" /> </asp:HyperLinkField> <asp:HyperLinkField DataNavigateUrlFields="ID" HeaderText="Delete" Text="<img src="images/trashcan.gif" mce_src="images/trashcan.gif" border='0'>" DataNavigateUrlFormatString="~/test_List.aspx?id={0}" > <ItemStyle HorizontalAlign="Center" /> </asp:HyperLinkField> </Columns> <FooterStyle BackColor="#E6EAF7" /> <RowStyle BackColor="#E6EAF7" /> <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" /> <HeaderStyle BackColor=LemonChiffon Font-Bold="True" ForeColor="#666699" HorizontalAlign=Left BorderColor="DeepSkyBlue" /> <AlternatingRowStyle BackColor="White" /> <PagerSettings Visible="False" /> </asp:GridView> </td></tr> <tr bgcolor="#ACB4CE"> <td style="height: 19px" ></td> <td style="width: 273px; height: 19px;" ></td> <td class="a" style="width: 85px; height: 19px;" > <asp:LinkButton ID="lbpre2" runat="server" CommandArgument="prev" OnClick="PagerButtonClick" >Previous</asp:LinkButton></td> <td class="a" style="width: 85px; height: 19px;"> <asp:LinkButton ID="lbnext2" runat="server" CommandArgument="next" OnClick="PagerButtonClick" >Next</asp:LinkButton></td> </tr> </table> </td> </tr> <tr> <td colspan="3"> <input id="hidID" runat="server" type="hidden" /> <input id="hidsysMsg" runat="server" type="hidden" /> <input id="hidopMode" runat="server" type="hidden" /> <input id="hidsortExpression" runat="server" type="hidden" /> <input id="hiddirection" runat="server" type="hidden" /> <input id="hidIsDel" runat="server" type="hidden" /> <input id="hidpagesize" runat="server" type="hidden" /> </td> </tr> </table> </div> </form> </body> </html> 后台 cs文件: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class List : BasePage { protected void Page_Load(object sender, EventArgs e) { hidsysMsg.Value = ""; if (!IsPostBack) { hidID.Value = Request.QueryString["id"]; hidsortExpression.Value = Request.QueryString["SORT"]; hiddirection.Value = Request.QueryString["direction"]; hidpagesize.Value = Request.QueryString["pagesize"]; gridviewshow(); if (hidID.Value.Length > 0) { hidIsDel.Value = "true"; } } else { if (hidopMode.Value == "1") { Del(); gridviewshow(); hidopMode.Value = ""; hidID.Value = ""; } } } private void gridviewshow() { string SortExpression = hidsortExpression.Value; string direction = hiddirection.Value; if (SortExpression == null || direction == "") { BindGridView(); } else { SortGridView(SortExpression, direction); } linkbttonenableset(); } private void linkbttonenableset() { lbpageof.Text = "Displaying " + (GridView1.PageIndex + 1) + " of " + GridView1.PageCount; lbnext.Text = "Next " + DropDownList1.SelectedItem.Value; lbpre.Text = "Previous " + DropDownList1.SelectedItem.Value; lbnext2.Text = "Next " + DropDownList1.SelectedItem.Value; lbpre2.Text = "Previous " + DropDownList1.SelectedItem.Value; lbpageof.Visible = true; lbnext.Enabled = true; lbpre.Enabled = true; lbnext2.Enabled = true; lbpre2.Enabled = true; if (GridView1.Rows.Count == 0) { lbpageof.Visible = false; lbnext.Enabled = false; lbpre.Enabled = false; lbnext2.Enabled = false; lbpre2.Enabled = false; } else if (GridView1.PageCount == 1) { lbnext.Enabled = false; lbpre.Enabled = false; lbnext2.Enabled = false; lbpre2.Enabled = false; } if (GridView1.PageIndex == GridView1.PageCount - 1) { lbnext.Enabled = false; lbnext2.Enabled = false; } if (GridView1.PageIndex == 0) { lbpre.Enabled = false; lbpre2.Enabled = false; } } private void BindGridView() { using (DBManage _db = new DBManage()) { //修改绑定的sql查询语句 string _sqlStr1 = " SELECT * from table where Deleted=0 "; _sqlStr1 += " order by Date desc,Time desc "; GridView1.PageSize = Convert.ToInt32(DropDownList1.SelectedItem.Value); GridView1.DataSource = _db.GetDataSet(_sqlStr1).Tables[0].DefaultView; GridView1.DataBind(); } } private void SortGridView(string sortExpression, string direction) { DataSet ds; using (DBManage _db = new DBManage()) { //修改绑定的sql查询语句 string strsql1 = " SELECT * from table where Deleted=0 "; strsql1 += " order by Date desc,Time desc "; ds = _db.GetDataSet(strsql1); ds.Tables[0].DefaultView.Sort = sortExpression + " " + direction; GridView1.PageSize = Convert.ToInt32(DropDownList1.SelectedItem.Value); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } } public SortDirection GridViewSortDirection { get { if (ViewState["sortDirection"] == null) ViewState["sortDirection"] = SortDirection.Ascending; return (SortDirection)ViewState["sortDirection"]; } set { ViewState["sortDirection"] = value; } } protected void PagerButtonClick(object sender, EventArgs e) { string arg = ((LinkButton)sender).CommandArgument.ToString(); switch (arg) { case "prev": if (GridView1.PageIndex > 0) { GridView1.PageIndex -= 1; } break; case "next": if (GridView1.PageIndex < (GridView1.PageCount - 1)) { GridView1.PageIndex += 1; } break; default: GridView1.PageIndex = 0; break; } gridviewshow(); } protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string sortExpression = e.SortExpression; if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; SortGridView(sortExpression, "desc"); hidsortExpression.Value = sortExpression; hiddirection.Value = "desc"; } else { GridViewSortDirection = SortDirection.Ascending; SortGridView(sortExpression, "asc"); hidsortExpression.Value = sortExpression; hiddirection.Value = "asc"; } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; gridviewshow(); } protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { GridView1.PageSize = Convert.ToInt32(DropDownList1.SelectedItem.Value); gridviewshow(); } private void Del() { //修改更新的sql语句 string _sqlStr = "update table set Deleted=1 ," + " Last_Update_by_UserID='" + u_ID + "'," + " Date='" + DateTime.Now.ToString("yyyy-MM-dd") + "'," + " Time='" + DateTime.Now.ToString(@"HH:mm:ss G/MT zzz") + "'" + " where ID='" + StrFun.Rep(hidID.Value) + "'"; using (DBManage _db = new DBManage()) { if (_db.SetData(_sqlStr)) { hidsysMsg.Value = "Delete successful!"; } else { hidsysMsg.Value = "Delete failed!"; } hidID.Value = ""; } } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowIndex > -1) { e.Row.Cells[e.Row.Cells.Count-1].Text = "<a href="javascript:DEL(/"" + e.Row.Cells[0].Text + "/");" mce_href="javascript:DEL(/"" + e.Row.Cells[0].Text + "/");"><img src="images/trashcan.gif" mce_src="images/trashcan.gif" border='0'></a>"; } } protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) { e.Row.Cells[0].Visible = false; } }