绑定DataGridViewCheckBoxColumn没有更新绑定源
问题描述:
我有一个绑定到一个BindingSource的与数据源作为活动记录模型的列表的DataGridView:绑定DataGridViewCheckBoxColumn没有更新绑定源
BindingSource bs = new BindingSource();
bs.DataSource = _user.Addresses;
地址布尔属性命名的实际,和我的DataGridView有CheckBoxColumn:
DataGridViewCheckBoxColumn c = new DataGridViewCheckBoxColumn(false);
c.Name = "actualColumn";
c.HeaderText = "Aktualny";
c.DataPropertyName = "Actual";
c.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
addressesDataGridView.Columns.Add(c);
正确显示来自数据库的数据。
当我点击选中的复选框单元格,并取消选中它,然后去保存按钮,属性实际在我的bindingsource不是没有选中。
当我点击选中的复选框单元格并取消选中它并更改行选择,然后单击保存时,按钮更改在绑定源中可见。
此问题是否存在解决方法?
答
问题是数据网格没有更新基础数据源。
您可以尝试调用BindingSource.EndEdit作为保存功能的第一件事。
您也可以尝试在绑定到控件的CurrencyManager上调用EndCurrentEdit。要访问它,你这样做:
myCurrencyManager = (CurrencyManager)this.BindingContext[myTable];
没有你的建议的工作,但你鼓舞了我(为+1 :),谢谢)出发,按照上保存功能的榜首位工作: addressesDataGridView.EndEdit() – 2010-01-12 19:56:01