注册 登录
编程论坛 ASP.NET技术论坛

[求助]关于datagrid控件中项目选择的问题

cobby 发布于 2007-08-13 10:22, 612 次点击
只有本站会员才能查看附件,请 登录


上面的图中显示了若干个记录,当前被选项是第一个,也就是datagrid1.selectedindex=0.
但如果这个时候我想查看“112”这条记录,我去点击它,应该是datagrid1.selectedindex=3的这条,但页面在刷新前先运行ItemCommand事件,使得我明明要查看第4个(“112”)记录,却只能看到第1个(“111”)这条记录,请问这个问题如何解决呢?谢谢!
5 回复
#2
sean882007-08-13 10:30

你查看的方式是怎么样的?跳转到第二个页面看详细信息?还是?
还有你的绑定代码贴出来,不用的绑定方法处理也就不一样~~~

#3
cobby2007-08-13 12:23
depart_temp = pds_per.Tables[0].Rows[DataGrid2.SelectedIndex][1].ToString().Replace(" ", "");

pds_per是当前的dataset,我想通过点击datagrid2的项来查看该项目的所在部门并赋值给depart_temp。可是DataGrid2.SelectedIndex总是原来的被选序号,而无法显示当前点击的项目序号

怎么办呀
#4
川流不息2007-08-13 12:32
有可能你绑定的时候是在page_load里面,但是,你是放在if(!ispostback){}外面,所以,你每次刷新的时候,他重新绑定,你就会有可能一直得到的是第一个的值。
#5
cobby2007-08-13 14:32
不是这个问题呢,主要的问题是我按一个项目的时候,先激发ItemCommand事件,而此时,selectedindex还停留在原先的值,没有被赋以当前点击的项目序号值。是这个问题,不过不知道该怎么做,使得点击一个项目时,能够让selectedindex自动获取当前项目的值。请大家再帮帮忙了。
#6
cobby2007-08-13 14:38
哈哈,解决了呵。
depart_temp = pds_per.Tables[0].Rows[DataGrid2.SelectedIndex][1].ToString().Replace(" ", "");
里面的DataGrid2.SelectedIndex改成e.Item.ItemIndex了,这个属性是指当前被选的项目。这下问题就解决了。谢谢各位帮忙。这里也给大家做个参考
1