天天看点

gridview中嵌套Button控件

这个是在网上找的一片文章,自己试着调试了一下,但并未调试成功,以后有时间了在调试吧!大家谁调试出来也可以发布出来分享。

  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.csdn.net/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 的值    

           }   

   }