Code
获取GridView中RowCommand的当前索引行 前台添加一模版列,里面添加一个Button
<asp:TemplateField HeaderText="测试">
<ItemTemplate>
<asp:Button ID="Button1" CommandName="btn" runat="server" Style="position: relative" Text="Button" />
</ItemTemplate>
</asp:TemplateField>
后台
protected void gv_Company_RowCommand(object sender, GridViewCommandEventArgs e){
if (e.CommandName == "btn"){
int index = Convert.ToInt32(e.CommandArgument);
DataKey key = this.gv_Company.DataKeys[index];
string str = key.Value.ToString();
}
}
//行数据绑定
protected void gv_Company_RowDataBound(object sender, GridViewRowEventArgs e){
if (e.Row.RowType == DataControlRowType.DataRow){
Button bt = new Button();
bt = (Button)e.Row.Cells[6].FindControl("Button1");
bt.CommandArgument = e.Row.RowIndex.ToString();
}
}
那么,如果是在GridView里已经设置了LinkButton为事件处理按钮,将通过以下方法获取索引
protected void gv_Company_RowCommand(object sender, GridViewCommandEventArgs e){
if (e.CommandName == "btn"){
GridViewRow drv = ((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent));
object result = (object)gv_Company.DataKeys[drv.RowIndex][int];//int为DataKeys位置
}
}
posted @
2008-08-06 13:32
wenanry
阅读(
302)
评论()
编辑
收藏
举报