我在GridView上加一列自定义列.在里面放了一个CheckBox控件.我怎么能在选中CheckBox时知道是选中的那一行啊?

解决方案 »

  1.   

    你把GridView的DataKeyNames属性设置成数据标识ID
    通过
    for (int i = 0; i < GridView1.Rows.Count; i++)
    {
    CheckBox ck = (CheckBox)GridView1.Rows[i].Cells[0].FindControl("CheckBox1");
    if (ck.Checked == true)
    {
    GridView1.DataKeys[i].Value;
    }
    }
    这种方式获取。
    你可以试一试。
      

  2.   

    你查询的标识id必须是第一列,因为Cells[0]这里取的是第一列。
      

  3.   

    GridView1.DataKeys[i].Value这句就是你要的。
      

  4.   

    index属性我知道啊..
    当GridView启用选定内容后.可以在它的SelectedIndexChanged事件里写:
        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            int i = GridView1.SelectedIndex;
            Label1.Text = i.ToString();
        }
    但我现在不想启用选定内容.怎么办啊?