我的DataGridView select mode是full rowselect ,第一列是DataGridViewCheckBoxColumn类型的列
,没绑定数据,主要是用来让用户勾选,现在的问题是: 当某行被选中的时候(checkbox没勾选),我在代码里获取这行的checkbox value 为 True
for(int i=0; i<grid.rows.count ; i++)
{
DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)......              Boolean flag = Convert.ToBoolean(checkCell.Value);
},不知为什么

解决方案 »

  1.   

    你获取CheckBox 的Value 有什么用啊 应该获取它的是否选中 CheckBox.Checked
      

  2.   

    明确告诉你,不会出现你这样的情况。可能你没有正确控制列索引,看看下面:        private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
            {
                try
                {
                    if (e.ColumnIndex == 0)        //控制你的DataGridViewCheckBoxColumn列
                    {//断点设置这里
                        bool b = Convert.ToBoolean(dataGridView1.CurrentRow.Cells[e.ColumnIndex].Value);
                    }
                  }
               }

    我测试的结果是false,看看你是哪里弄错了