<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答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
        主站蜘蛛池模板: 亚洲AV无码成人网站在线观看 | 亚洲精品无码高潮喷水A片软| 免费A级毛片在线播放| 亚洲成AV人在线观看天堂无码| 国产在线精品观看免费观看| 久久精品夜色噜噜亚洲A∨| 一级毛片在线完整免费观看| 亚洲国产精品第一区二区三区| 午夜不卡AV免费| 中文字幕亚洲一区二区va在线| 两个人看的www免费视频| 亚洲大尺度无码无码专区| 99在线视频免费| 亚洲午夜电影在线观看| 妞干网在线免费观看| 在线91精品亚洲网站精品成人| 亚洲精品无码专区2| 国产免费一区二区三区不卡 | **真实毛片免费观看| 亚洲免费视频观看| 四虎影在线永久免费观看| 国产精品成人啪精品视频免费| 亚洲视频.com| 宅男666在线永久免费观看| 一个人晚上在线观看的免费视频| 中文字幕一精品亚洲无线一区| 久久这里只精品热免费99| 亚洲av乱码一区二区三区香蕉| 国产精品色午夜视频免费看| 国产免费MV大全视频网站| 亚洲无成人网77777| 又粗又硬又黄又爽的免费视频| 拍拍拍无挡视频免费观看1000 | 亚洲欧洲日产国码高潮αv| 久久精品免费电影| 亚洲精品中文字幕| 亚洲精品成人无限看| 久久不见久久见免费影院 | 8x8×在线永久免费视频| 国产成人精品日本亚洲语音| 亚洲av日韩av不卡在线观看|