私は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 changed イベントを取得できますがprofileName
、それぞれの行セルからセルから文字列を取得する必要があります。
私はこのようなことを試しました -
string c = row.Cells("profileName").value.toString();
ただし、これは機能しませんでした。どうすれば文字列を取得できますか?