• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    如何在DataGrid控件中實現自定義分頁

    來源:懂視網 責編:小采 時間:2020-11-27 22:45:40
    文檔

    如何在DataGrid控件中實現自定義分頁

    如何在DataGrid控件中實現自定義分頁:如何在DataGrid控件中實現自定義分頁 在一般情況下,DataGrid控件每次實現翻頁操作時,都會將數據源中的數據重新調用一次,當數據中 數據很多時,這樣做就會很浪費系統資源和降低程序的執行效率.這時候我們一般通過自定義分頁來解 決這個問題. DataGr
    推薦度:
    導讀如何在DataGrid控件中實現自定義分頁:如何在DataGrid控件中實現自定義分頁 在一般情況下,DataGrid控件每次實現翻頁操作時,都會將數據源中的數據重新調用一次,當數據中 數據很多時,這樣做就會很浪費系統資源和降低程序的執行效率.這時候我們一般通過自定義分頁來解 決這個問題. DataGr

    如何在DataGrid控件中實現自定義分頁 
        在一般情況下,DataGrid控件每次實現翻頁操作時,都會將數據源中的數據重新調用一次,當數據中
    數據很多時,這樣做就會很浪費系統資源和降低程序的執行效率.這時候我們一般通過自定義分頁來解
    決這個問題.
        DataGrid控件的AllowCustomPaging屬性用來獲取或設置DataGrid控件是否允許自定義分
    頁;VirtualItemCoun屬性用來獲取或設置在使用自定義分頁時DataGrid中實際的項數.要實現自定義分
    頁,必須將AllowPaging與AllowCustomPaging屬性都設置為"True".
        在DataGrid中要實現自定義分頁的關鍵是,使該控件僅僅調用當前顯示所需要的數據源數據,在下
    面的例子中通過CurrentPageIndex和PageSize屬性的值,在數據綁定時只取當前頁需要的數據.
        (1)頁面代碼:
    代碼如下:

    <%@ Page language="c#" Codebehind="Main.aspx.cs" AutoEventWireup="false" 
    Inherits="SissonDemo.Main" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
        <HEAD>
            <title>Main</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">
                <FONT face="宋體">
                    <asp:DataGrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 8px; POSITION: 
    absolute; TOP: 24px" runat="server"
                        Width="792px" Height="96px" AllowCustomPaging="True" 
    AllowPaging="True" PageSize="5">
                        <PagerStyle Mode="NumericPages"></PagerStyle>
                    </asp:DataGrid></FONT>
            </form>
        </body>
    </HTML>
        (2)后臺代碼:
    代碼如下:

    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;

    namespace SissonDemo
    {
        /**//// <summary>
        /// Main 的摘要說明。
        /// </summary>
        public class Main : System.Web.UI.Page
        {
            protected System.Web.UI.WebControls.DataGrid DataGrid1;
             int startIndex = 0;//用來保存當前頁數據項的起始索引
            private void Page_Load(object sender, System.EventArgs e)
            {
                if(!IsPostBack)
                {
                    Bind();//初始化時進行數據綁定
                }

            }
            void Bind()//綁定數據方法
            {  //定義數據庫連接對象
                SqlConnection cn=new SqlConnection("server=.;database=pubs;uid=sa;pwd=");
               //創建數據適配對象
                SqlDataAdapter da=new SqlDataAdapter("select title_id ,title ,type, pub_id 
    ,price,pubdate from titles",cn);
                //創建DataSet對象
                DataSet ds=new DataSet();
                try
                {   //從指定的索引開始取PageSize條記錄.
                    da.Fill(ds,startIndex,DataGrid1.PageSize,"CurDataTable");
                    da.Fill(ds,"AllDataTable");//填充數據集合
                    //設置DataGrid控件實際要顯示的項數
                    DataGrid1.VirtualItemCount=ds.Tables["AllDataTable"].Rows.Count;
                    //進行數據綁定
                    DataGrid1.DataSource=ds.Tables["CurDataTable"];
                    DataGrid1.DataBind();

                }
                catch
                {
                    Page.RegisterClientScriptBlock("","<script>alert('數據顯示錯
    誤');</script>");
                }

            }

            Web 窗體設計器生成的代碼#region Web 窗體設計器生成的代碼
            override protected void OnInit(EventArgs e)
            {
                //
                // CODEGEN: 該調用是 ASP.NET Web 窗體設計器所必需的。
                //
                InitializeComponent();
                base.OnInit(e);
            }

            /**//// <summary>
            /// 設計器支持所需的方法 - 不要使用代碼編輯器修改
            /// 此方法的內容。
            /// </summary>
            private void InitializeComponent()
            {    
                this.DataGrid1.PageIndexChanged += new 
    System.Web.UI.WebControls.DataGridPageChangedEventHandler
    (this.DataGrid1_PageIndexChanged);
                this.Load += new System.EventHandler(this.Page_Load);

            }
            #endregion

            private void DataGrid1_PageIndexChanged(object source, 
    System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
            {
                    //設置DataGrid當前頁的索引值為用戶選擇的頁的索引
                    DataGrid1.CurrentPageIndex=e.NewPageIndex;
                    //取得當前頁為止總共有多少條記錄,以便在下一頁就從該記錄開始讀取
                    startIndex=DataGrid1.PageSize*DataGrid1.CurrentPageIndex;
                   //取得綁定數據
                    Bind();
            }
        }
    }

        在這段程序中,首先在數據綁定時,設置DataGrid控件的VirtualItemCoun屬性值為查詢結果集中的
    記錄總數,然后取得當前頁要顯示的數據,初始化時當前頁顯示的數據為從取到的數據的零位置開始,到
    DataGrid控件的PageSize屬性的設定值為止的數據記錄數.在分頁操作中重新定義了取得下一頁數據時
    的數據項的開始索引值,然后調用數據綁定方法把取到的新數據和DataGrid控件重新綁定. 

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    如何在DataGrid控件中實現自定義分頁

    如何在DataGrid控件中實現自定義分頁:如何在DataGrid控件中實現自定義分頁 在一般情況下,DataGrid控件每次實現翻頁操作時,都會將數據源中的數據重新調用一次,當數據中 數據很多時,這樣做就會很浪費系統資源和降低程序的執行效率.這時候我們一般通過自定義分頁來解 決這個問題. DataGr
    推薦度:
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 亚洲精品国产成人专区| 国产精品推荐天天看天天爽| 香蕉国产精品频视| 亚洲精品国产V片在线观看| 尤物国产在线精品福利一区| 综合在线视频精品专区| 国产精品无码一区二区在线| CAOPORM国产精品视频免费| 香蕉依依精品视频在线播放| 91精品婷婷国产综合久久| 国精无码欧精品亚洲一区| 亚洲AV无码成人精品区狼人影院| 99re66在线观看精品免费| 国产精品免费无遮挡无码永久视频| 亚洲精品tv久久久久| 精品99久久aaa一级毛片| 最新国产精品亚洲| 91麻豆精品视频| 精品国产一区AV天美传媒| 亚洲国产精品无码av| 日韩精品欧美国产在线| 精品人体无码一区二区三区| 成人精品一区二区三区| 亚洲国产精品久久久久婷婷软件| 国产精品毛片久久久久久久 | 2022精品天堂在线视频| 日韩精品无码一区二区三区免费 | 永久免费精品影视网站| 办公室久久精品| 久久精品国产亚洲欧美| 国产产无码乱码精品久久鸭| 国产亚洲精品美女久久久| 奇米影视7777久久精品| 四虎国产精品永久在线观看| 亚洲精品乱码久久久久久按摩 | 久久99精品国产麻豆| 亚洲国产精品无码AAA片| 午夜精品一区二区三区免费视频| 亚洲AV午夜福利精品一区二区| 亚洲精品无码永久中文字幕| 四虎国产精品永久免费网址|