2016-11-29 41 views
0

我在我的網站中有網格。但結果行數超過20,000。我的網站變慢了。我想將行分成幾個頁面。如何在ASP.net中分頁gridview

在一個頁面請求的行是500到1000

PLZ注: - 更改要在發佈網站。源代碼被刪除。

+0

嘗試 https://www.codeproj ect.com/articles/410733/custom-paging-with-asp-net-gridview –

+0

你有什麼嘗試? –

+0

fooTable是一個非常優秀的客戶端解決方案(無需在服務器端創建單獨的頁面) - http://fooplugins.github.io/FooTable/。但真正快速的谷歌搜索應該已經出現了很多可能的解決方案。問題顯示了一個明顯缺乏研究努力恕我直言。 – ADyson

回答

1

在HTML:

<asp:GridView ID="GridView1" runat="server"> 
</asp:GridView> 

代碼:

using System.Data.SqlClient; 
using System.Data; 

public string strConnection = "Data Source=.; uid=sa; pwd=sa;database=test;"; 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     BindData(); 
    } 
    protected void BindData() 
    { 

     SqlConnection con = new SqlConnection(strConnection); 
     con.Open(); 
     SqlCommand cmd = new SqlCommand("select * from UserDetails", con); 
     DataSet ds = new DataSet(); 
     SqlDataAdapter da = new SqlDataAdapter(cmd); 
     da.Fill(ds); 
     GridView1.DataSource = ds; 
     GridView1.DataBind(); 
     con.Close(); 
    } 

    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) 
    { 
     GridView1.PageIndex = e.NewPageIndex; 
     BindData(); 
    } 

您可以設置頁面大小和GridView控件的屬性算

+0

非常感謝你的朋友 –

0

使用jQuery做分頁,因爲這將是客戶端和快速。

http://www.c-sharpcorner.com/uploadfile/rahul4_saxena/show-and-paging-in-asp-net-gridview-using-jquery/ 
+0

它會影響到其他jQuery的功能嗎? –

+0

它不會影響其他jquery函數,但如果在語法上會有任何錯誤,那麼您的任何jQuery代碼將無法工作。 – Engineer

0

我有電網在我的網站。但結果行超過 20,000。我的網站變慢了。我想將行分成幾個 頁面。 在一個頁面請求的行是500到1000

假設你的網格是一個GridView:

的.aspx

<asp:GridView ID="YourIDHere" runat="server" 
    AllowPaging="true" 
    OnPageIndexChanging="YourIDHere_PageIndexChanging" 
    PageSize="500"> 
    <Columns> 
     <!-- Your BoundFields or other data goes here --> 
    </Columns> 
    <PagerSettings Mode="NumericFirstLast" PageButtonCount="10" /> 
</asp:GridView> 

.aspx.cs

protected void YourIDHere_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    YourIDHere.PageIndex = e.NewPageIndex; 
    YourIDHere.DataBind(); 
}