这样肯定找不到值的,原因是,一个单元格里面可能会有很多个控件,谁知道你要找哪一个控件呢, 你可以这样写:
((Label)GridView1Rows[eNewSelectedIndex]Cells[0]FindControl(这里写你要获取的值的那个控件的ID))Text
FindControl()方法是在这个单元格里面寻找指定ID的控件,它返回的是一个object类型的对象,所以需要强制转换一下,你就按照你的那个控件的类型写在最前面的那个括号里,这样就可以了
直接给你上码: 1、获取选中行的某列的值:object ojb =GridView1getrowcellvalue(GridView1focusedrowhandle,"列名"); 2、看数据源是什么类型,如果是datatable 则:datatable dtnew=(datatable)gridcontrol1datasource,然后,把你要添加的Datarow dr =dtnewnewrow();dr[0]=""; dtnewrowsadd(dr); dtnewaccepchanges();添加完毕,在重新绑一次gridcontrol1datasource=dtnew; 在这个GridView1添加一行一样的,都要在绑定的数据源中添加不然你刷新后就不见了你添加的行。 3、不是这样写的你的写法错了。DataRow vCurrenRow = thisgridDatagridView1GetFocusedDataRow(); 应该是这样写:DataRow vCurrenRow = thisgridView1GetDataRow(gridview1focusedrowhandle); 你看下然后实际 *** 作一下下次就懂了。
绑定的时候绑定上ID,设置DataKey等于ID这一列,让后隐藏那一列,当你点击任何一行按钮时
在RowCommand事件里写上下面这一句
string index = (Gridview的ID)DataKeys[intParse(eCommandArgumentToString())]ValueToString();
这是在获取你所点击行的 id
然后写
ResponseRedirect("(页名)aspxfun=" +index+"&bh=" );
在所跳到的页接收这个id根据id在去库里掉数据进行修改 *** 作
将你那个按钮的commandName设置为selected
dataKeyNames 设置成你的数据主键
然后在gridview的 Rowcommand事件里面通过 eCommandArgument获得主键值
然后、、、
SelectedRow这个属性是GridView的当前选中行
SelectedRowCells是该行所有的单元格
如果要取第一个单元格,就是SelectedRowCells[0]
1如何获得gridview的当前选中行
给linkbutton
设置
commandname,如
commandname
=
gotourl
用
gridviewrowcommand
事件。
if(ecommandname=="gotourl")
{
gridview1rows[erowindex]cells[列名]text
}
2如果想实现
跳转到另一个页面,不用这么复杂,因为没必要提交到服务器去的。
用hyperlink控件
或者用
">其它页面
以上就是关于获取GridView中选中行的值全部的内容,包括:获取GridView中选中行的值、dev gridcontrol怎么获取选中行的某一列的值、ASP.NET中如何获取Gridview选中行的值和传递等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)