国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET技巧:DataGrid傳統(tǒng)分頁方式

2024-07-10 13:12:24
字體:
供稿:網(wǎng)友


收集最實用的網(wǎng)頁特效代碼!

此分頁方式與傳統(tǒng)asp分頁方式相仿。

datagridpage.aspx

以下為引用的內(nèi)容:
<%@ page language="c#" codebehind="datagridpage.aspx.cs" autoeventwireup="false" inherits="netcrm.datagridpage" %>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en" >
<html>
 <head>
  <title>datagridpage</title>
  <meta name="generator" content="microsoft visual studio .net 7.1">
  <meta name="code_language" content="c#">
  <meta name="vs_defaultclientscript" content="javascript">
  <meta name="vs_targetschema" content="http://schemas.microsoft.com/intellisense/ie5">
 </head>
 <body ms_positioning="gridlayout">
  <form id="form1" method="post" runat="server">
   <asp:datagrid id="datagrid1" runat="server" alternatingitemstyle-backcolor="#eeeeee" headerstyle-backcolor="#aaaadd"
    font-size="8pt" font-name="verdana" cellpadding="3" borderwidth="1px" bordercolor="black"
    pagerstyle-horizontalalign="right" pagerstyle-mode="numericpages"
    pagesize="5" font-names="verdana" width="100%">
    <alternatingitemstyle backcolor="#eeeeee"></alternatingitemstyle>
    <headerstyle backcolor="#aaaadd"></headerstyle>
    <pagerstyle horizontalalign="right" mode="numericpages"></pagerstyle>
   </asp:datagrid>
  </form>
  <table cellspacing="0" cellpadding="1" width="100%" bgcolor="#aaaadd" border="0">
   <tbody>
    <tr>
     <td>
      <table cellspacing="0" cellpadding="4" width="100%" bgcolor="#fef8e2" border="0">
       <tbody>
        <tr>
         <td class="m" nowrap align="center"><asp:literal id="literal1" runat="server"></asp:literal></td>
        </tr>
        <tr>
         <td class="c" nowrap align="center"><asp:literal id="literal2" runat="server"></asp:literal></td>
        </tr>
       </tbody>
      </table>
     </td>
    </tr>
   </tbody>
  </table>
 </body>
</html>

datagridpage.aspx.cs

以下為引用的內(nèi)容:
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 netcrm
{
 /// <summary>
 /// datagridpage 的摘要說明。
 /// </summary>
 public class datagridpage : system.web.ui.page
 {
  protected system.web.ui.webcontrols.literal literal1;
  protected system.web.ui.webcontrols.literal literal2;
  protected system.web.ui.webcontrols.datagrid datagrid1;
  private void page_load(object sender, system.eventargs e)
  {
   // 在此處放置用戶代碼以初始化頁面
   if(!ispostback)
   {
    bindgrid();
   }
  }
  private void bindgrid()
  {
   string connstring = "server=.;database=northwind;user id=sa;password=;";
   string sql="select * from orders";
   sqlconnection conn = new  sqlconnection(connstring);
   conn.open();
   dataset ds = new dataset();
   sqldataadapter sqladapter = new sqldataadapter(sql,conn);
   sqladapter.fill(ds,"users");
   dataview dataview = new dataview();
   dataview = ds.tables[0].defaultview;
   datagrid1.datasource = ds.tables[0].defaultview;
   datagrid1.databind();
   string cpage;
   int pagesize = 10;
   int currentpage;
   int pagecount;
   int numresults = 0;
   if (request.querystring["page"]==null)
   {
    cpage="1";
   }
   else
   {
    cpage=request.querystring["page"].tostring();
   }
   try
   {
    currentpage = int32.parse(cpage);
   }
   catch
   {
    currentpage = 1;
   }
   numresults = 0;
   int start = (int)((currentpage - 1) * pagesize);
   int to = (int)(currentpage * pagesize);
   if (start <= 0) start = 0;
   numresults = dataview.count;
   int a1=0;
   pagecount = math.divrem(numresults,pagesize,out a1);
   if (a1>0)
   {
    pagecount++;
   }
   if(currentpage>pagecount || currentpage<=0)
   {
    currentpage = 1;
   }
   if(currentpage==pagecount)
   {
    to = dataview.count;
   }
   // create one datatable with one column.
   datatable mytable = new datatable("mytable");
   mytable = dataview.table.clone();
   //datacolumn colitem1 = new datacolumn("name",type.gettype("system.string"));
   //datacolumn colitem2 = new datacolumn("types",type.gettype("system.string"));
   //datacolumn colitem3 = new datacolumn("vendor",type.gettype("system.string"));
   //mytable.columns.add(colitem1);
   //mytable.columns.add(colitem2);
   //mytable.columns.add(colitem3);
   //add row
   datarow newrow;
   for(int i=start;i<numresults;i++)
   {
    if(i<to)
    {
     newrow = mytable.newrow();
     for(int k=0;k<dataview.table.columns.count;k++)
     {
      newrow[k] = dataview.table.rows[i][k];
     }
     mytable.rows.add(newrow);
    }
   }
   mytable.acceptchanges();
   dataview resultdataview = new dataview(mytable);
   datagrid1.datasource = resultdataview;
   datagrid1.databind();
   /// <summary>
   ///  生成頁導(dǎo)航條。
   /// </summary>
   string strnav = "";
   int endpage;
   if (currentpage>1)
   {
    strnav += "<a href='?page="+ (currentpage-1).tostring() +"'>上一頁</a>  ";
   }
   if (currentpage>11)
   {
    strnav += "<a href='?page=1'>1</a> ...";
   }
   if(pagecount>currentpage+10)
   {
    endpage = currentpage+10;
   }
   else
   {
    endpage = pagecount;
   }
   for (int i=currentpage-10;i<endpage+1;i++)
   {
    if(i>=1)
    {
     if (i==currentpage)
     {
      strnav +="<font color=#990000><strong>"+ i.tostring() +"</strong></font> ";
     }
     else
     {
      strnav += "<a href='?page="+ i.tostring() +"'>"+ i.tostring() +"</a> ";
     }
    }
   }
   if((currentpage+10)<pagecount)
   {
    strnav += "... <a href='?page="+ pagecount.tostring() +"'>"+ pagecount.tostring() +"</a>";
   }
   if(currentpage<pagecount)
   {
    strnav += " <a href='?page="+ (currentpage+1).tostring() +"'>下一頁</a>  ";
   }
   literal1.text = strnav;  
   literal2.text = "共 "+ numresults.tostring() +" 條供應(yīng)信息,當(dāng)前顯示第 "+
    (start+1).tostring() +" - "+ to.tostring()  +" 條,共 "+ pagecount.tostring() +" 頁";
  }
  #region web 窗體設(shè)計器生成的代碼
  override protected void oninit(eventargs e)
  {
   //
   // codegen: 該調(diào)用是 asp.net web 窗體設(shè)計器所必需的。
   //
   initializecomponent();
   base.oninit(e);
  }
  /// <summary>
  /// 設(shè)計器支持所需的方法 - 不要使用代碼編輯器修改
  /// 此方法的內(nèi)容。
  /// </summary>
  private void initializecomponent()
  {   
   this.load += new system.eventhandler(this.page_load);
  }
  #endregion
 }
}

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄冈市| 隆德县| 富平县| 大同县| 宝丰县| 怀仁县| 九寨沟县| 长泰县| 河曲县| 巴里| 思南县| 太白县| 肥乡县| 礼泉县| 卢湾区| 海宁市| 隆安县| 阳信县| 哈尔滨市| 达日县| 永平县| 灵山县| 石门县| 休宁县| 萝北县| 湘阴县| 永吉县| 隆回县| 新野县| 瑞丽市| 辰溪县| 定安县| 清新县| 沅江市| 铜鼓县| 新乡市| 定日县| 高密市| 仲巴县| 长宁县| 临武县|