C# dataGridView 无法获取checkbox选中值
source link: https://bbs.csdn.net/topics/399173378
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
C# dataGridView 无法获取checkbox选中值
checkColumn =
new
DataGridViewCheckBoxColumn();
checkColumn.HeaderText =
"select"
;
checkColumn.Name =
"select"
;
dgv.Columns.Add(checkColumn);
Console.WriteLine(dgv.Columns.Count.ToString());
dgv.CellMouseClick +=
new
DataGridViewCellMouseEventHandler((
object
sender, DataGridViewCellMouseEventArgs e) =>
{
if
(e.ColumnIndex == 4)
//列号为什么是4
{
//打印输出行号
Console.WriteLine(
"index "
+ e.RowIndex.ToString());
if
(e.ColumnIndex == 4)
{
int
i = e.RowIndex;
Boolean ret = Convert.ToBoolean(dgv1.Rows[i].Cells[
"select"
].Selected);
if
(ret)
Console.WriteLine(
"true"
);
else
Console.WriteLine(
"false"
);
}
}
});
参考
https://www.cnblogs.com/moss_tan_jun/archive/2011/04/06/2007319.html
dgv1.Rows[i].Cells["select"].Value
参考了他的,但是几个事件都不能正确获取某行的checkbox的选中状态。
dgv.CellClick += dgv_CellClick;
dgv.CellValueChanged += dgv_CellValueChanged;
dgv.CellMouseClick
上面三个都不行。
参考了他的,但是几个事件都不能正确获取某行的checkbox的选中状态。
dgv.CellClick += dgv_CellClick;
dgv.CellValueChanged += dgv_CellValueChanged;
dgv.CellMouseClick
上面三个都不行。
是获取不到,还是获取的是错的??断点调试看看啊
在dgv_CellValueChanged事件中有反应了,但是永远慢一拍。dgv1.Rows[i].Cells["select"].Value
private
void
dgv_CellValueChanged(
object
sender, DataGridViewCellEventArgs e)
{
//打印输出行号
Console.WriteLine(
"index "
+ e.RowIndex.ToString());
if
(e.ColumnIndex == 5)
{
int
i = e.RowIndex;
Boolean ret = Convert.ToBoolean(dgv1.Rows[i].Cells[
"select"
].Value);
if
(ret)
Console.WriteLine(
"true"
);
else
Console.WriteLine(
"false"
);
}
}
index 0
false
index 1
false
index 2
false
index 3
false
index 4
false
index 0
true
index 1
true
index 2
true
index 3
true
取消第0行,没反应,取消第一行,打印index 0 false, 取消第2行,打印index 1 false,以此类推。
这种有解决办法么
试了下,确实在点很快的情况下获取状态是错误的。
选中一行后,点Button,在 Buttun_Click里
DataGridViewRow row = this.dataGridView1.SelectedRows[0];
object value = row.Cells[0].Value;
选中一行后,点Button,在 Buttun_Click里
DataGridViewRow row = this.dataGridView1.SelectedRows[0];
object value = row.Cells[0].Value;
没太听懂你的意思,这是要规定用户习惯,每次必须选中行后,才能点击checkbox?分两步走?
另外,我发现上面的逻辑还有个问题,如果在同一行的的checkbox来回点击就没有任何反应。
改为cell_doubleclick事件呢?
private
void
dataGridView1_CellMouseClick(
object
sender, DataGridViewCellMouseEventArgs e)
{
if
(e.ColumnIndex == 2)
{
bool
isChecked =
bool
.Parse(
this
.dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString());
this
.dataGridView1.Rows[e.RowIndex].Cells[2].Value = !isChecked;
}
}
加个事件试试
匿名用户不能发表回复!
DataGridViewCheckBoxCell cell = (DataGridViewCheckBoxCell)row.Cells[0]; cell.Value = cbxSelectAll.Checked;//直接赋值bool值 2. 获取值(true / false) Convert.ToBoolean(cellCbx.Value)//转换成bool值 ...
关于datagridview中checkbox列在选中行的情况下无法操作值(dgvr.Cells["checkbox列名称"] as DataGridViewCheckBoxCell).Value = (bool)((dgvr.Cells["DeleteFile"] as DataGridViewCheckBoxCell).Value) ? false : true; 发现个问题就是在datagridview选中的那一行上checkbox的值并没有改...
C#中Datagridview的CheckBox获取选中状态的不同// 情况(1) DataGridViewCheckBoxCell checkBox =(DataGridViewCheckBoxCell)SeMsgData.Rows[i].Cells["Msg_CheckBox"]; if(checkBox.Selected == true) ...DataGridViewCheckBoxCell checkBox =(DataGridView
获取DataGridView中的Checkbox选中状态private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { //获取DataGridView中的Checkbox选中状态 Boolean m_bool = Convert.ToBool...
datagridview选中获取行号_如何获取datagridview中checkbox选中的多行数据开发(winform)时碰到这个问题 C# 怎样判断 datagridview 中的checkbox列是否被选中,错误原因都C#对类型判断相当严格,为了避免大家以后多走弯路,把我的思路和大家说一下,希望对大家有帮助。for (int i = 0; i <...
C# DataGridView手动添加数据设置CheckBox默认选中private void TestForm_Load(object sender, EventArgs e) ... this.dataGridView1.Columns.Insert(0, new DataGridViewCheckBoxColumn() { HeaderText = "选择", Name = "select" }); t...
c#datagridview获取选中复选框总数private void dataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) { int rowInde = e.RowIndex; if ((Convert.ToBoolean(dataGridView.Rows[rowInde].Cells[0].Value) == true)) { ...
C# Winform中DataGridView的DataGridViewCheckBoxColumn CheckBox是否选中转载至:...下面介绍Winform中DataGridView的DataGridViewCheckBoxColumn使用方法: DataGridViewCheckBoxColumn CheckBox是否选中 在判断DataGridView中CheckBox选中列的时候
C# winfrom 中取datagridview中checkbox的所有选中值private void DataGrid1_CellContentClick(object sender, DataGridViewCellEventArgs e) { DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)DataGrid1.CurrentRow.Cells["cb_
C# 删除DataGridView中Checkbox选中项private void btnDelete_Click(object sender, EventArgs e) { try { if (this.dataGridView1.Rows.Count == 0) { MessageBo...
C# Winform中DataGridView的DataGridViewCheckBoxColumn CheckBox选中判断在判断DataGridView中CheckBox选中列的时候,用DataGridViewRow.Cells[0].FormattedValue.ToString()=="True"语句时存在问题,当我们直接点 击CheckBox时,结果显示未选中,但是如果我们在点击其他单元格时,结果...
获取Datagridview 中的checkbox选中项List jobSearchIdList = new List(); //选中的Id for (int i = 0; i ; i++) { if (dgvEXunJobSearch["D_Selected", i].Value != null) //D_
获取datagridview中checkbox选中的多行数据private void button2_Click(object sender, EventArgs e) //打开BOM查询{ form2 f2 = new form2(); //第二个表单form2 f2.ShowDialog(this); dataGri
c# datagridview里面的checkbox全选和取消全选 按钮首先 using System; 然后,设置全选button,选中所有的checkbox private void selectAll_Click(object sender, ... //遍历datagridview中的每一行,判断是否选中,若为选中,则选中 for (int i = 0; i...
关于winform datagridview第一列checkbox无法选中因为业务需求 我需要在页面显示时,初始化时,根据数据将第一列的checkbox选中,但我写了多行代码多无法实现,不知有没有高手帮忙解答。具体代码,属性如下 ![![![图片说明]...
Datagridview 中的checkbox 选中或勾选状态失效先选中第一行,单元格的单击事件中 改变选中状态为1,第一行取消选择,单元格的单击事件中 改变选中状态为0 private void dgvDept_CellContentClick(object sender, DataGridViewCellEven...
C# 怎样判断 datagridview 中的checkbox列是否被选中private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e){ for(inti=0;i<dataGridView1.Rows.Count;i++) { if((bool)dataGridView1.Rows[i].Cells[0].EditedF...
c# datagridview 复选框列选择获取值没有变化public Form1() { InitializeComponent();... datagridview.CellContentClick += dgv_CellContentClick; } private void dgv_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.Co...
C#Winform判断DataGridView中的checkbox列是否选中for (int i = 0; i < this.dataGridView1.Rows.Count; i++) { DataGridViewCheckBoxCell cb = (DataGridViewCheckBoxCell)this.dataGridView1.Rows[i].Cells[0]; bool
datagridview取消默认选中_c# – 带有选中默认值的复选框的DataGridView我在Winform中有一个dataGridView,我在datagrid中添加了一个带有复选框的列,使用了我在这里看到的代码:DataGridViewCheckBoxColumn column = new DataGridViewCheckBoxColumn();{column.HeaderText = "Export";...
C# Datagridview checkbox关于checkbox列 (System.Windows.Forms.DataGridViewCheckBoxColumn),用法通常是: a. 按照数据源,显示“选择”或“不选” (即打勾或不打勾); b. 改变选中状态:选中不选; c. .获取选中的数据行; 有两种...
DataGridView操作之获取checkbox列选中行数1 int selected=0; 2 private void dgvArchivesData_CellContentClick(object sender, DataGridViewCellEventArgs e) 3 { 4 for (int i = 0; i < dgvArchivesData.Rows.Count; i++) ......
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;...
C# DataGridView中DataGridViewCheckBoxColumn不能勾选的原因在InitializeComponent()中有这样的代码...this.dataGridView1.ReadOnly = true; this.Column3.ReadOnly = true;//DataGridViewCheckBoxColumn 说明默认DataGridView和生成的列都是只读的 需要将他们都设为false才行
Winform开发 如何为dataGridView 添加CheckBox列,并获取选中行//添加CheckBox列 DataGridViewCheckBoxColumn columncb = new DataGridViewCheckBoxColumn(); columncb.HeaderText = "选择"; columncb.Name = "cb_check"; columncb.TrueValue = ...
获取DataGridView中checkBox选中的多行数据并将选中的行插入数据库 代码:(将有关插入的封装到类里面了) private void btAdd_Click(object sender, EventArgs e) { try { string s = ""; int count = 0;
C#勾选dataGridView中的CheckBox(可以多选)并把有修改的CheckBox值(1或者0)更新到数据库表A....你好! 代码示例: private void button1_Click(object sender, EventArgs e) { for (int i = 0; i < dataGridView1.Rows.Count; i++) { try {
C# DataGridViewCheckBoxColumn CheckBox全选C#实现 DataGridViewCheckBoxColumn CheckBox全选
Java基础概述-Java基础视频_深入浅出精华版本课程讲解了Java语言概述及环境搭建和配置 学完后可独立完成HelloWorld案例,并能够解决常见的开发小问题。
【中国PHP教育大牛高洛峰】亲授php教程中国php教程第一人高洛峰亲授php教程,几乎作为了所有php新手入行的装备,影响了几十万的web开发者经典教程。 让菜鸟学php变的更容易。几乎从零开始的学习教程,最终开发畅通无碍。
2021年五一数学建模题目,带附录,全全参赛选手亲自上传,保全
“互联网+”大学生创新创业大赛项目计划书填 写 说 明
1.封面上“项目编号”一栏由秘书组编写; 2.项目名称力求简洁、明确,每个项目限报一名负责人; 3.请逐项认真填写; 4.本次大赛必须以团队形式报名参赛,每个团队成员不能少于 3人(包括项目负责人在内); 5.请将撰写完成后的项目计划书按规定时间提交。
相关热词 c# 冲突 多线程 c#实现tcp客户端 c#按钮字体靠左靠左 c#基类的显示方法 c# 结构体作为函数参数 c# 折线图 c#text 覆盖 c#读取数据库安全 c# 动态编译函数 c#摄像头拍照Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK