获取GridView中RowCommand的当前索引行 前台添加一模版列,里面添加一个LinkButton。前台 (如果在后台代码中用eCommandArgument取值的话前台代码就必须在按钮中设置CommandArgument的值,值为绑定的数据库字段
<asp:TemplateField HeaderText=" *** 作">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="QianRu"
CommandArgument='<%# Eval("Id") %>'>签入</asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" CommandName="QianChu">签出</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
后台
在GridView里已经设置了LinkButton为事件处理按钮,将通过以下方法获取索引
protected void gv_Company_RowCommand(object sender, GridViewCommandEventArgs e){
if (eCommandName == "QianRu")
{ //取ID的值方法一
GridViewRow drv = ((GridViewRow)(((LinkButton)(eCommandSource))ParentParent)); //此得出的值是表示那行被选中的索引值
inf id=ConvertToInt32(GridView1DataKeys[drvRowIndex]Value); //此获取的值为GridView中绑定数据库中的主键值
//取ID的值方法二
GridViewRow drv = ((GridViewRow)(((LinkButton)(eCommandSource))ParentParent)); //此得出的值是表示那行被选中的索引值
//此获取的值为GridView中绑定数据库中的主键值,取值方法是选中的行中的第一列的值,drvRowIndex取得是选中行的索引
int id = ConvertToInt32(GridView1Rows[drvRowIndex]Cells[0]Text);
//取ID的值方法三
//因为在客户端中就已经将LinkButton的CommandArgument与主键Id给绑定了所以在此可以直接用eCommandArgument得出主键ID的值
int id = ConvertToInt32(eCommandArgumentToString());
}
}
个人认为,在设置PageSize时,程序自身实际上是进行了分页 *** 作的,也就是在进行显示的时候事实上只是显示的当前页的数据,因此,就算你改了PageSize的值,当数据量达到一定程度的时候,还是不管用。
这里就有另外的问题了,如果你之前使用的是DataSet,那么可以通过遍历DataSet中的表获取数据,没必要那么纠结,非得在一棵树上吊死,反正数据已经取出来了。但是如果你的数据量大的话,就可能得损失一点点性能了。如果你使用的是DataReader的话,索性在从数据库中区吧。呵呵
不知道,你是不是必须从GridView中取呢,如果是的话,我也没有什么好的建议了?
如果解决了问题,贴个简单的思路让大家都学习学习。Good Luck!
1在GridView“编辑列”选项中添加一个按钮,命名“获取价格”,并将其命令名属性即CommandName设为“getPrice”
如何在GridView中获取某一行某一字段的值 - luoxs - 你来我网
2设置GridView属性,为RowCommand事件添加处理函数,此处为设为priceSelected,回车,自动生成函数。
如何在GridView中获取某一行某一字段的值 - luoxs - 你来我网
3在函数中添加如下代码:
protected void priceSelected(object sender, GridViewCommandEventArgs e)
{
int rowSelected =ConvertToInt32( eCommandArgument);
if (eCommandName == "getPrice")
{
TextBox1Text = GridView1Rows[rowSelected]Cells[5]Text;
}
}
其中,eCommandArgument获取按钮所在行号。
以上就是关于c# gridview选中的行ID全部的内容,包括:c# gridview选中的行ID、Gridview中的datakeys可否获得全部行的ID、如何在GridView中获取某一行某一字段的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)