我的DateGrid用了一个按钮列,我点击按钮时有响应,问题是怎么知道点击的是哪一行?怎么获得这个参数?

解决方案 »

  1.   

    ItemDataBound中:If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
      Dim rowNo as int32 = e.Item.ItemIndex
    End If
      

  2.   

    那如果我想把我的id号放在按钮的好里面怎么做?是不是还要做一个模板列阿?<input name = "id",visible="false" runat ="server">这样吗?要不怎么做呢〉
      

  3.   

    ItemDataBound中:If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
      Dim rowNo as int32 = e.Item.ItemIndex
    End If
    这个时什么意思?能解释一下吗?
      

  4.   

    //****使用模版列
    //****将你要获取的值,邦定到隐藏控件中
     <asp:TemplateColumn>
          <input id="txtid" type="hidden" value='<%#DataBinder.Eval(Container.DataItem,"ID")%>' />    
       <asp:LinkButton ID="lkbdelete" runat="server" CommandName="Delete">删除</asp:LinkButton>  
    </asp:TemplateColumn>//****后台代码,在itemcommand事件获取邦定的值
    HtmlInputHidden txtid=(HtmlInputHidden)e.item.findcontrol("txtid");
      

  5.   

    smile9961()  给的方法是行不通的呵呵不好意思啊!
    我在看一下zhangxiaopin(zxp) 的方法哈!
      

  6.   


    删除的时候(比如你创建的是行删除按纽),curryPriorId 是你要删除的行号
        protected void gv_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int curryPriorId = int.Parse(gv.Rows[e.RowIndex].Cells[0].Text);        SqlObject newobj = new SqlObject();
            newobj.MainCommand = "delete from prior where priorid=" + curryPriorId + "";
            newobj.ExecuteNonQuery();
            gv_databind();
        }