gpt4 book ai didi

c# - 绑定(bind) DataGridViewCheckBoxColumn 不更新绑定(bind)源

转载 作者:太空宇宙 更新时间:2023-11-03 11:51:25 25 4
gpt4 key购买 nike

我将 DataGridView 绑定(bind)到绑定(bind)源,并将数据源作为事件记录模型的列表:

    BindingSource bs = new BindingSource();
bs.DataSource = _user.Addresses;

Address 具有名为 Actual 的 bool 属性,我的 DataGridView 具有 CheckBoxColumn:

    DataGridViewCheckBoxColumn c = new DataGridViewCheckBoxColumn(false);
c.Name = "actualColumn";
c.HeaderText = "Aktualny";
c.DataPropertyName = "Actual";
c.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
addressesDataGridView.Columns.Add(c);

数据库中的数据正确显示。

当我单击选中的复选框单元格并取消选中它然后转到保存按钮时,我的绑定(bind)源中的属性 Actual 并没有被取消选中。

当我单击选中的复选框单元格并取消选中它并更改行选择,然后单击保存时,按钮更改在绑定(bind)源中可见。

此问题是否存在解决方法?

最佳答案

问题是数据网格没有更新底层数据源。

您可以尝试在保存功能中首先调用 BindingSource.EndEdit。

您还可以尝试在绑定(bind)到控件的 CurrencyManager 上调用 EndCurrentEdit。要访问它,您需要:

myCurrencyManager =
(CurrencyManager)this.BindingContext[myTable];

关于c# - 绑定(bind) DataGridViewCheckBoxColumn 不更新绑定(bind)源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2047778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com