获取GridView的BoundField值

我们在使用 GridView 控件展示列表时,如果需要获取 BoundField 的值,可以使用 GridView1.Rows[i].Cells[j].Text。
举个例子:
前台:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>后台获取GridView行和列</title>
</head>
<body>
<form id="form1" runat="server">
    <asp:GridView ID="GridView1" runat="server" Width="100%" AutoGenerateColumns="false">
        <Columns>
            <asp:TemplateField HeaderText="选择" HeaderStyle-Width="5%">
                <ItemTemplate>
                    <asp:HiddenField ID="RsID" runat="server" Value='<%#Eval("S#")%>' />
                    <asp:CheckBox ID="cbSelect" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="Sname" HeaderText="姓名" />
            <asp:BoundField DataField="Ssex" HeaderText="性别" />
            <asp:BoundField DataField="Sage" HeaderText="年龄" />
        </Columns>
    </asp:GridView>
    <asp:Button ID="btnOK" runat="server" Text="获取" onclick="btnOK_Click" />
</form>
</body>
</html>

后台代码:

protected void btnOK_Click(object sender, EventArgs e)
{
    string strNames = "";
    int rowCount = this.GridView1.Rows.Count; //获取GridView行数
    for (int i = 0; i < rowCount; i++)
    {
        strNames += this.GridView1.Rows[i].Cells[1].Text.ToString() + " ";
    }
    Response.Write(strNames);
}

如果是想获取里面的控件,可以使用 GridView1.Rows[i].Cells[j].Controls[k]。

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/PearlRan/p/4833081.html