问题标签 [datagridviewcheckboxcell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 一个取消选择的行总是与 dataGridView 中的选定行一起插入到数据库中
我制作了以下 WinForm,用户在其中提供书籍详细信息并创建书籍记录。这本书记录被添加到 dataGridView 并自动选中复选框:
现在,当我取消选择一些书籍并单击“插入到数据库”按钮以将选定的书籍插入数据库时,其中一本被取消选择的书籍总是与选定的书籍一起插入到数据库中。那可能是任何一本被取消选择的书。
像这里我取消选择一些书:
现在,当我单击“插入到数据库”按钮时,未选择的书籍将从 dataGridView 中删除,选定的书籍将插入数据库:
现在插入数据库的书籍是选定的书籍“123”、“345”、“678”以及一本未选择的书籍“890”。像这样,一本未选择的书总是与选定的书一起插入到数据库中。
我写的代码是:
如果有人能帮助我解决这个问题,我将不胜感激。
谢谢!
c# - DataGridView、DataGridViewCheckBoxColumn 不允许多次检查
有一个奇怪的问题DataGridView
。它DataSource
绑定到一个对象列表,set; get;
它从这个源获取数据,因为它应该具有 datagridview 中复选框的所有布尔状态。但是,当我尝试更改 中的复选框时DataGridView
,它一次只允许选中一个复选框。有点像单选按钮。
这不是我想要的功能,因为我希望能够检查多个复选框,然后可能稍后保存已完成的更改以使其永久化。
我做了DataGridView
两次,因为我认为这可能是一些神秘的设置。
知道是什么原因造成的吗?
她来了一些代码。
以常规形式设置 DGV 仅用于测试
设计规范
c# - 如何检查是否选中了 dataGridView 复选框?
我是编程和 C# 语言的新手。我被卡住了,请帮忙。所以我写了这段代码(c#Visual Studio 2012):
所以我收到以下错误:
运算符“==”不能应用于“object”和“bool”类型的操作数。
c# - 基于Datatable在Data grid View中标注Checkboxes
我有一个dataGridView1
与数据表绑定的数据网格视图dt1
。
数据表dt1
有以下数据:
我在 Data gridview 中放置了一个复选框,并且我希望复选框的默认值被选中,其中状态 = 1。
c# - DataGridViewCheckBoxCell 点击处理问题
我创建了一个 DataGridView 控件,其中第一列是一个复选框。当我在复选框内单击时,代码会正确执行。但是,当单击发生在单元格中而不是复选框中时,代码会正确处理复选框的状态,但不会更新复选框本身,因此它会保持单击前的状态。
我该如何纠正?
如果我单击该行上的另一个单元格,则会正确处理该复选框。仅当我单击复选框单元格而不是复选框本身时。
我的意思是(并道歉),代码正确执行,但 UI 没有正确更新以反映更改。因此,如果复选框在病房之后似乎也未选中之前未选中,即使它实际上已被选中。
谢谢罗恩
winforms - 立即更新 DataGridViewCheckBoxCell
我正在以编程方式更新我的 WinForm DataGridView
问题,DataGridViewCheckBoxCell 没有更新!!!
我是谷歌,它看起来像是知道案例,但无论我尝试过什么都没有帮助。
c# - 数据绑定数据网格视图复选框在焦点更改之前不更新基础列表
我正在使用绑定到列表的 winform datagridview。有一个复选框列绑定到布尔类型字段。问题是,当检查/取消选中一个复选框时,它不会更新基础列表,直到我将焦点更改为DataGrid视图的另一个单元格为止。
有没有办法通过不将焦点转移到另一个单元格来做到这一点?
c# - 无法识别 DataGridViewCheckBoxCell 的值
因此,我在这里看到了几篇帖子,并且尝试了所有解决方案均无济于事。我在网上尝试了几个例子,但没有任何效果。这是在嘲讽我!下面的代码是我现在正在运行的代码,我认为它应该可以工作,但事实并非如此。问题是如果该值不是真或假,那么它会因无效转换而爆炸,因为该值显示为 {}。如果该值为真,那么它永远不会被识别为真,其中 cell.Value = cell.TrueValue。我在 datagridview 设置中将 TrueValue 和 FalseValue 分别设置为 true 和 false。我错过了什么?
我想我终于得到了它的一部分。cell.Value == DBNull.Value 用于新的原始复选框。cell.Value == cell.FalseValue 仍然无法正常工作。
更新代码
我终于搞定了。通过使用 Convert.ToBoolean(cell.Value) == false 而不是 cell.Value == cell.FalseValue 克服了最后一个问题
最终代码:
vb.net - 循环通过复选框列来计算选定的单元格
我的数据网格视图中有一个复选框列,我想限制用户只检查 7 个框,不多也不少。另外,我希望每次单击复选框时都会发生一些事情。像这样(仅限伪代码):
我已经尝试了几层和不同的 FOR_NEXT 循环安排来让它工作,但我就是不能让它工作!这是我的代码:
但它的作用是遍历我的 DGV 中的所有行(有 50 多行),因此它显示MsgBox("You can only select 7 names.")
. 我也尝试过使用普通的 FOR-NEXT 循环(我的意思是,普通的计数器的东西。喜欢For counter As Integer = 0 to 7 ... Next
的东西。)并把它放在For Each row As DataGridViewRow In dgvPaidComms.Rows...
里面,反之亦然,只是感到失望。
我搞不清楚了。我真的很困惑。我认为这与它有关,DataGridView1.Rows(e.RowIndex).Cells(0).Value
因为我认为它只捕获一个 CellClick 事件(我的意思是,一个选中的复选框。因为当我尝试运行代码时会发生什么,我选中一个复选框,然后我会MsgBox("You can only select 7 names.")
弹出,因为它真的贯穿所有的行,当我使用普通的 FOR_NEXT (上面解释过)时,它变成了一个无限循环。)
有人可以帮我解决这个困惑吗?