C#----判断DataGridView中CheckBox的值
来源:互联网 发布:格斗漫画知乎 编辑:程序博客网 时间:2024/04/28 01:19
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0 && e.RowIndex != -1)
{
DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)dataGridView1.SelectedRows[0].Cells["Column1"];
Boolean flag = Convert.ToBoolean(checkCell.EditedFormattedValue);
if (flag == true) //查找被选择的数据行
{
MessageBox.Show("true");
}
else
MessageBox.Show("false");
}
}
C# winfrom 中datagridview中checkbox的使用方法
方法一:
private void dgv_zy_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
int count = Convert.ToInt16(dgv_zy.Rows.Count.ToString());
for (int i = 0; i < count; i++)
{
DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)dgv_zy.Rows[i].Cells["cb_check"];
Boolean flag = Convert.ToBoolean(checkCell.Value);
if (flag == true) //查找被选择的数据行
{
checkCell.Value = false;
}
else
continue;
}
}
}
获取选择的数据
int count = Convert.ToInt32(dgv_zy.Rows.Count.ToString());
for (int i = 0; i < count; i++)
{
//如果DataGridView是可编辑的,将数据提交,否则处于编辑状态的行无法取到
dgv_zy.EndEdit();
DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)dgv_zy.Rows[i].Cells["cb_check"];
Boolean flag = Convert.ToBoolean(checkCell.Value);
if (flag == true) //查找被选择的数据行
{
//从 DATAGRIDVIEW 中获取数据项
string z_zcode = dgv_zy.Rows[i].Cells[0].Value.ToString().Trim();
}
}
方法二:
如果需要在winform 的数据控件datagridview 中嵌入checkbox列 ( DataGridViewCheckBoxCell ),
在程序的执行中有可能需要像纯粹的checkbox控件的selectedindexchanged事件一样的事件来捕捉其状态的改变
我觉得比较好的方式是用datagridview 控件的cellcontentclick事件 例如:
如果嵌入的 DataGridViewCheckBoxCell 列在第一列,判断状态并添加处理事件可以为:
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 0 && e .RowIndex != -1)
{
//获取控件的值
MessageBox.Show(this.dataGridView1.Rows[e.RowIndex].Cells[0].EditedFormattedValue.ToString());
//或者可以做其他事件处理程序
}
}
需要注意的是执行此事件是需要屏蔽其他datagridview单元格的cellcontentclick事件 ,即让除了 DataGridViewCheckBoxCell 列
之外的所有列的ReadOnly=True;
在获取datagridview中checkbox列的值得时候 一定要用 EditedFormattedValue属性,此属性获取的是编辑以后数值 而value 和
FormattedValue返回的往往是编辑以前的数值,而其重复单击的时候往往会出现错误(无法确定是编辑前还是编辑后的数值: 主要
原因是焦点问题,需要先移动焦点使datagridview获取更改后的数据在区获取他 就没有问题了,所以以后用去获取数据前先要移出
datagridview中的焦点!!!),所以一定要用EditedFormattedValue来获取属性值
- C#----判断DataGridView中CheckBox的值
- 判断DataGridView中CheckBox是否选择
- c#DataGridView控件中CheckBox列的使用
- DataGridView中选择CheckBox值不变时的解决办法
- C#Winform判断DataGridView中的checkbox列是否选中
- c#中datagridview里checkbox的使用方法
- Winform 中DataGridView的checkbox列,当修改checkbox状态时实时获得其状态值
- C# 判断 DataGridView 每行的 CheckBox 列是否被选中
- 在C/S架构中,给DataGridView的表头添加CheckBox控件
- C#DatagridView中单元格合法验证判断
- C# winfrom 中取datagridview中checkbox的所有选中值
- C# winfrom 中datagridview中checkbox的使用方法
- DataGridView列中添加CheckBox
- C#中Datagridview的CheckBox获取选中状态的不同
- 关于datagridview中checkbox列在选中行的情况下无法操作值
- dataGridView中只能输入数字的判断
- VS2005 WinFrom中的DataGridView中加入CheckBox的问题
- Winform中 DataGridView添加 CheckBox列的问题集锦
- 职场规划——自信和谦虚
- linux 下的集成测试工具
- C#-----TreeView根节点选中后,子节点全选中
- C#----关闭登录窗体,显示主窗体
- C#----获得应用程序运行路径
- C#----判断DataGridView中CheckBox的值
- Thinkx200 XP安装资料整理
- 第一次遇见明码标价的机床销售模式-哈斯机床
- 好文章整理
- 给不给积分
- 2011-05-15 19:38:22
- 2011-05-15 19:38:42
- 2011-05-15 19:38:57
- 114la后台管理代码文件结构概述