是否有更好的方法来获得gridview值?

时间:2013-03-21 04:36:19

标签: c# asp.net gridview findcontrol

对于gridviews,如何在单击按钮时从中获取单元格值以及列名称,并且此按钮有时可以嵌入到gridview行中,也可以在gridview的其他位置在页面上。 我的愚蠢和简单的方法是通过在客户端创建每个列作为标签类型来找到gridview列的控件。 所以它在服务器端用于获取文本值,如

Label lblName = (Label) gvName.Rows[gvName.RowIndex].FindControl("lblSomeContent")

当它只有几列时没关系,但是如果有十多个不同的列,我应该一次又一次地这样做十次吗?有没有更好的方法? 我试图遍历每个gridview.rows但它总是包含空值,我不知道为什么。

1 个答案:

答案 0 :(得分:1)

你可以做什么,你可以创建一个网格行的实例 然后你可以使用find control。

GridViewRow gRow=gvName.Rows[gvName.RowIndex];

然后使用find control

Label lblName = (Label)gRow.FindControl("lblSomeContent");

与其他控件类似

TextBox textBox=(TextBox)gRow.FindControl("txtSomeContent");