我想从行按钮的onclick事件中获取行的列值(并进行查询操作)。我怎样才能做到这一点 ?当按下 btnAktar 时,我想获取该行中的 Meslek 列的值。谢谢。我的网格视图如下:
<iskurControls:IskurGridView runat="server"
ID="ctlGridSgkTecrube"
AutoGenerateColumns="False"
EmptyDataText="Tecrübe Bilginiz Bulunmamaktadır."
EnableViewState="true"
CssClass="table table-bordered table-condensed text-small">
<Columns>
<asp:TemplateField HeaderText="Seç">
<ItemTemplate>
<asp:Button ID="btnAktar" runat="server" Text="Aktar" CommandName="AktarRow" class = "inp" OnClientClick="return callme(this)" OnClick="btnIstecrubesi_Click" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="ISYERISICILNO" HeaderText="İşyeri Sicil No" >
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="ISYERIADI" HeaderText="İşyeri Adı" >
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="MESLEKKODU" HeaderText="Meslek Kodu">
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="MESLEK" HeaderText="Meslek">
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="SURE" HeaderText="Süre">
<HeaderStyle HorizontalAlign="Right" />
</asp:BoundField>
<asp:BoundField DataField="BASLANGICTARIHI" HeaderText="Baş Tar">
<HeaderStyle HorizontalAlign="Right" />
</asp:BoundField>
<asp:BoundField DataField="BITISTARIHI" HeaderText="Bit Tar" DataFormatString="{0:d}" >
<HeaderStyle HorizontalAlign="Right" />
</asp:BoundField>
<asp:BoundField DataField="SEKTOR" HeaderText="Sektör" ItemStyle-CssClass="Hide" HeaderStyle-CssClass="Hide" />
</Columns>
<PagerStyle CssClass="grid-PagerStyle"></PagerStyle>
<SelectedRowStyle CssClass="grid-SelectedRowStyle"></SelectedRowStyle>
<HeaderStyle CssClass="grid-HeaderStyle"></HeaderStyle>
<EditRowStyle CssClass="grid-EditRowStyle"></EditRowStyle>
<AlternatingRowStyle CssClass="grid-AlternatingRowStyle"></AlternatingRowStyle>
<FooterStyle CssClass="grid-FooterStyle"></FooterStyle>
<RowStyle CssClass="grid-RowStyle"></RowStyle>
<EmptyDataRowStyle CssClass="grid-EmptyRow" />
</iskurControls:IskurGridView>
当按下 btnAktar 时,我想获取该行中的 Meslek 列的值。我需要在后端执行此操作。
使用commandArgument <%# ((GridViewRow) Container).RowIndex %>解决了。
<iskurControls:IskurGridView runat="server"
ID="ctlGridSgkTecrube"
AutoGenerateColumns="False"
EmptyDataText="Tecrübe Bilginiz Bulunmamaktadır."
EnableViewState="true"
CssClass="table table-bordered table-condensed text-small" OnRowCommand="ctlGridSgkTecrube_RowCommand">
<Columns>
<asp:TemplateField HeaderText="Seç">
<ItemTemplate>
<asp:Button CommandArgument="<%# ((GridViewRow) Container).RowIndex %>" ID="btnAktar" runat="server" Text="Aktar" CommandName="AktarRow" class = "inp" OnClientClick="return callme(this)" />
</ItemTemplate>
</asp:TemplateField>
protected void ctlGridSgkTecrube_RowCommand(object sender, GridViewCommandEventArgs e)
{
int row = Convert.ToInt32(e.CommandArgument.ToString());
String v = ctlGridSgkTecrube.Rows[row].Cells[4].Text;
}