我如何通过点击gridview中的checkbox(通过模板列添加的)
得到gridview中其他列的值去赋给一个变量(不要在gridview进行循环查找(记录多,效率太低))。
在如下函数中添加
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
    {
          判断点击行
          从点击行得到第一列的值付给某个变量
    }

解决方案 »

  1.   

    是不是这样可以做,设置一个TabIndex
    <asp:CheckBox ID='CheckBox1' runat="server"  TabIndex='<%#((GridViewRow)Container).RowIndex%>' />然后在
    protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
        {
              //判断点击行
             // 从点击行得到第一列的值付给某个变量
        ....
         GridView1.Rows[((CheckBox)sender).TabIndex].FindControl("...")
        ...
        }
      

  2.   

    直接 findcontor 不行吗.
      

  3.   

    CheckBox cb = (CheckBox)sender;
    GridViewRow gvr = ((GridViewRow)cb.Parent.Parent);
    this.GridView1.Rows[gvr.RowIndex].Cells[1].Text = "asdf";