检索GridView字符串值

时间:2013-01-17 17:07:45

标签: c# asp.net gridview

我有一个GridView -

<asp:GridView ID="table_example" Runat="server" 
DataSourceID="SqlDataSource3" AutoGenerateColumns="False" 
ClientIDMode="Static" onprerender="table_example_PreRender">
    <Columns>
        <asp:TemplateField>
     <HeaderTemplate>
         <asp:Label ID="Label1" runat="server" Text="Select"></asp:Label>

     </HeaderTemplate>
     <ItemTemplate>
        <asp:CheckBox ID="chkRow" runat="server" OnCheckedChanged="CheckBoxPN_CheckedChanged" AutoPostBack="true"/>
     </ItemTemplate>
  </asp:TemplateField>
        <asp:BoundField HeaderText="profileID" DataField="profileID" 
                        SortExpression="profileID"></asp:BoundField>
        <asp:BoundField HeaderText="profileName" DataField="profileName" 
                        SortExpression="profileName"></asp:BoundField>
    </Columns>
</asp:GridView>

chkRow -

背后的代码
protected void CheckBoxPN_CheckedChanged(Object sender, EventArgs e)
    {
        CheckBox chk = (CheckBox)sender;
        GridViewRow row = (GridViewRow)chk.NamingContainer; 

        //when a user clicks the checkbox I need the string from profileName in that row. 

    }

在调试时,我可以进入checkBox更改事件,但是需要从{1}单元格的相应行单元格中检索字符串。

我尝试过这样的事情 -

profileName

然而这不起作用,我怎么能得到字符串?

2 个答案:

答案 0 :(得分:4)

如果您使用BoundField,则需要使用Cells[index].Text。因为它在第三列:

string profileName = row.Cells[2].Text;

答案 1 :(得分:0)

你可以像

一样

Ex: 你可以马上给出像;

string profilename = gridview.Rows[0].Cells[1].Text;