通过检索数据库中合乎条件的数据,得到数据比如:
ID    name   sex    age
8     王华    男    34
15    杨星    男    25
40    何笑    女    24
72    娜期    女    31
81    杨决可  男    24
.      .      .      .
.      .      .      .
.      .      .      .我在页面上有Button(Text="下一条"),还有三个TextBox(txtname,txtsex,txtage)
现在我的问题是我点击 下一条 时txtname显示"王华",txtsex显示"男",txtage显示"34",
再点击  下一条  时txtname显示"杨星",txtsex显示"男",txtage显示"25",
依次类推...
想了几天了都没有想到合适的方法,谢谢大家...

解决方案 »

  1.   

    关键是保存索引的问题。设置一个ViewState["Index"] = 0 ,然后每点一次Button,就从ViewState["Index"]取出索引,到DataTable.rows[索引]处取值,然后把ViewState["Index"]加1。不过这种一般用Ajax,比较时髦,
      

  2.   

    检索的数据存在dst中 点下一条i++ dst.table[0].rows[i]["name"].tostring();
      

  3.   

    在页面放一个hidden,初始值设为0。
    在button事件中
    使用sql语句
    string sql=string.format("select top 1 * from (..查询结果数据集) a where id>{0} order by id",hidden.value);
    查询出一条数据,然后将此数据的id值赋给hidden,如此循环
      

  4.   

    第一步,在查询出符合条件的数据集后,用ViesState将其保存下来!因为你有按钮,每次点击后如果不用这个保存的话,将需要重复的查询!第二步:添加一个变量,也用ViewState保存下来!在按钮事件里,DataRow dr=ds.Tables["tab"].select(i);
    this.TextBox1.Text=dr["...."];
    .....
    .....
    i++仅提供参考,你试试先!
      

  5.   

    可以先把数据保存到一个datatable里面
    然后定义一个变量 i
    text1 = table[0].rows[i][0]
    text2 = table[0].rows[i][1]
    text3 = table[0].rows[i][2]
    每次点击按钮时i加1如果动态读入的话 
    可以使用游标
      

  6.   

    如果结果数据已经存在一个datatable里,则可以用datatable.select方法通过上面的方式过滤数据再取第一行的数据。
    或者直接datatable.rows[i]来取第i行的数据
      

  7.   

    如果数据量不大,可以把它保存在ViewState中
    ViewState["datasource"] = myDataTable;//查询出来的数据
    ViewState["index"] = 0;//当前显示第几行点击下一条时就从里面取数据;重新查询则更新ViewState;====================也可以用存储过程实现,每次只查询一条,这要看你是什么数据库了,oracle的话比较容易,
    select * from table1 where .... and rownum = n 就可以了
    ms sql就麻烦一点点,参考“分页存储过程”也可以写出来,
    当然,用ViewState["index"] 保存当前显示第几行还是需要的
      

  8.   

    在ORACLE 中 select top N....  这中语句不行,在ORACLE 中类似的杂用呢??
      

  9.   

    Oracle更简单了,好像专门有一个行索引这一列的。
      

  10.   

    Eddie005(♂) 暴赱 『零零伍』(︶︵︶)) 已经说了