-1
私は自分のMySQLデータベースのデータをhtmlテーブルに表示するasp.net webapplicationを作ったので、一度に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();
}
ここで問題は何ですか? – ISHIDA
6回目のクリック後、代わりに40行が表示され、もうボタンをクリックすることはできません。その代わりに – user6875529
、何が起こる必要がありますか? – ISHIDA