这个是在网上找的一片文章,自己试着调试了一下,但并未调试成功,以后有时间了在调试吧!大家谁调试出来也可以发布出来分享。
protected void GridView1_RowCreated( object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.FindControl("Button1") != null )
{
Button btn = (Button)e.Row.FindControl("Button1");
btn.Click += new EventHandler(btn_Click);
}
}
}
private void btn_Click( object sender, EventArgs e)
{
Button btn = (Button)sender;
GridViewRow gvr = (GridViewRow)btn.Parent.Parent;
string pk = GridView1.DataKeys[gvr.RowIndex].Value.ToString();
this .Label1.Text = pk;
http://topic.youkuaiyun.com/u/20080401/17/690f559d-7dcc-457e-bdec-6e01351bdbfe.html
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="Button1" runat="server" CommandName="MyCommand" Text="Button" />
</ItemTemplate>
</asp:TemplateField>
===============================================
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "MyCommand")
{
Button button = (Button)e.CommandSource;
GridViewRow row = (GridViewRow)button.Parent.Parent;
string a = row.Cells[1].Text.ToString();// 获得第一个单元格的值
string b = this.GridView1.DataKeys[row.DataItemIndex].Values[0];// 获得 DataKeys 的值
}
}