2017-06-02 53 views
-1

我做了一個asp.net web應用程序,它顯示來自我的MySQL數據庫的數據在html表中的數據,我做到這樣一次只能看到20行,並且在button_click事件下的20行可以看到,等等。但是,第6次點擊後,它會顯示40行,而該按鈕不能再單擊。C#自定義表分頁問題

的HTML

<div> 
    <table id="datagrid" runat="server"> 
    </table> 
    <asp:Button OnClick="Unnamed_Click" runat="server"/> 
</div> 

的C#代碼[決賽 - 工作,櫃面任何人都會需要它]

int minrows = 0; 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     DisplayData(); 
    } 
    private void DisplayData() 
    { 
     if (ViewState["minrows"] != null) 
     { 
      minrows = Convert.ToInt16(ViewState["minrows"]); 
     } 
     MySqlConnection conn = new MySqlConnection("server=localhost;database=apollo;user=root;password=mysqltest"); 
     MySqlCommand cmd = new MySqlCommand("SELECT Klantnr, Naam, Straat FROM tblklanten LIMIT "+minrows+", 20", conn); 
     conn.Open(); 
     MySqlDataReader Reader = cmd.ExecuteReader(); 
     while (Reader.Read()) 
     { 
      HtmlTableRow tr = new HtmlTableRow(); 
      HtmlTableCell td1 = new HtmlTableCell(); 
      HtmlTableCell td2 = new HtmlTableCell(); 
      HtmlTableCell td3 = new HtmlTableCell(); 
      datagrid.Controls.Add(tr); 
      td1.InnerText = Reader["Klantnr"].ToString(); 
      td2.InnerText = Reader["Naam"].ToString(); 
      td3.InnerText = Reader["Straat"].ToString(); 
      tr.Controls.Add(td1); 
      tr.Controls.Add(td2); 
      tr.Controls.Add(td3); 
     } 
     Reader.Close(); 
     conn.Close(); 
    } 
    protected void Unnamed_Click(object sender, EventArgs e) 
    { 
     minrows += 20; 
     ViewState["minrows"] = minrows; 
     datagrid.Controls.Clear(); 
     DisplayData(); 
    } 
+1

這裏有什麼問題? – ISHIDA

+0

第6次點擊後,它會顯示40行,而按鈕不能再被點擊。 – user6875529

+0

而不是那個,需要發生什麼? – ISHIDA

回答