【问题标题】:How to add button click to show next item from database如何添加按钮单击以显示数据库中的下一个项目
【发布时间】:2015-02-19 20:58:12
【问题描述】:

这是我的代码,但它不起作用

protected void Button2_Click(object sender, EventArgs e)
    {
        int i = 1;
        if (GridView1.Rows.Count > 0)
        {
            TextBox1.Text = GridView1.Rows[i].Cells[1].Text;
            TextBox2.Text = GridView1.Rows[i].Cells[2].Text;
            TextBox3.Text = GridView1.Rows[i].Cells[31].Text;
            TextBox4.Text = GridView1.Rows[i].Cells[5].Text;
            i++; 
        }
    }

它没有如何下一个项目。

【问题讨论】:

  • 你需要使用ViewState来保存值i
  • i 在错误的范围内。将其创建为类变量。
  • 你能解释一下吗
  • HTTP 协议是无状态协议。因此,当每次单击按钮时,i 的值将被初始化为 1。因此,i++ 在该范围内无效。

标签: c# asp.net


【解决方案1】:

使用此代码

protected void Button2_Click(object sender, EventArgs e)
{
            int i = ViewState["cnt"]!=null? (int) ViewState["cnt"]:1;
            i = i + 1;
            TextBox1.Text = GridView1.Rows[i].Cells[1].Text;
            TextBox2.Text = GridView1.Rows[i].Cells[2].Text;
            TextBox3.Text = GridView1.Rows[i].Cells[31].Text;
            TextBox4.Text = GridView1.Rows[i].Cells[5].Text;
            ViewState["cnt"] = i;
}

【讨论】:

  • 先生,在这个 pgm 中,当它到达最后一个 ite(最后一行或第 n 行)时,我该如何停止。现在在 pgm wen 我点击 nxt 它将转到下一个项目,依此类推,但在最后一个项目之后它显示错误。
  • 请在count属性的帮助下检查数据库中的记录数,如果i和count相似,停止I变量的递增
  • 数据集 ds = (DataSet)GridView1.DataSource; int count = ds.Tables[0].Rows.Count; int i = ViewState["cnt"] !=null ? (int)ViewState["cnt"] : 1; if (count
  • 改变它 if (count != i) 而不是 if (count
  • 先生,pgm 在 int count = ds.Tables[0].Rows.Count 中显示错误;还有 if (count!=i)
猜你喜欢
  • 1970-01-01
  • 2020-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-09
  • 1970-01-01
相关资源
最近更新 更多