我从数据库中取出数据填充到textbox中,然后按一下next的button就刷新下一条记录
现在碰到的问题是,当我第一次按这个NEXT键是可以刷到第二条记录,但是再按就没有反映了.
下面是几个主要部分的代码,其中i是一个PUBLIC变量
private void Button2_Click(object sender, System.EventArgs e)
{
if(i<=max)
i++;
selectdata(i);
}void selectdata(int j)
{
string sql="select * from testdata where num="+j;
SqlConnection conn=new SqlConnection(connstr);
conn.Open();
SqlDataAdapter adp=new SqlDataAdapter(sql,conn);
DataSet ds=new DataSet();
adp.Fill(ds,"item");
TextBox1.Text=Convert.ToString(j);
TextBox2.Text=ds.Tables["item"].Rows[0][1].ToString();
TextBox3.Text=ds.Tables["item"].Rows[0][2].ToString();
TextBox4.Text=ds.Tables["item"].Rows[0][3].ToString();
ds.Clear();
}望各位大侠指点迷津
现在碰到的问题是,当我第一次按这个NEXT键是可以刷到第二条记录,但是再按就没有反映了.
下面是几个主要部分的代码,其中i是一个PUBLIC变量
private void Button2_Click(object sender, System.EventArgs e)
{
if(i<=max)
i++;
selectdata(i);
}void selectdata(int j)
{
string sql="select * from testdata where num="+j;
SqlConnection conn=new SqlConnection(connstr);
conn.Open();
SqlDataAdapter adp=new SqlDataAdapter(sql,conn);
DataSet ds=new DataSet();
adp.Fill(ds,"item");
TextBox1.Text=Convert.ToString(j);
TextBox2.Text=ds.Tables["item"].Rows[0][1].ToString();
TextBox3.Text=ds.Tables["item"].Rows[0][2].ToString();
TextBox4.Text=ds.Tables["item"].Rows[0][3].ToString();
ds.Clear();
}望各位大侠指点迷津
你的i是怎么定义的,在同一个类文件里吗?用什么定义的?在asp.net下,如果点击按钮来刷新的话,与winform是有很大区别的,它会把整个类,从page_load,再重新执行一遍的,当然,所有的变量,如i,也就重新定义了一遍。这个时候取出来的i,还是你想要的值吗?你可以设几个断点,跟踪一下就知道了。看看i等于几,从数据库取到值了没有?
2。用Session存储i值
3. 用ViewState存储i值