问题绑定WinForms CheckBox到SubSonic DAL布尔值

时间:2009-06-16 12:53:11

标签: winforms subsonic

我正在尝试将SubSonic 2.1生成的DAL对象绑定到WinForm(VB.NET VS2005)。为了解决缺少IPropertyNotifyChanged实现的问题,在我的绑定方法中,我在每个想要绑定的控件的controlname.DataBindings.Add()之前做一个controlname.DataBindings.Clear()。

文本框可以正常使用这样的代码(ioBLL是对我的BLL对象的引用,ioDAL是对其中的DAL属性的引用):

txtCountryName.DataBindings.Add(New Binding("Text", ioBLL.ioDAL, namespace.Country.Schema.Columns.GetColumn("CountryName").ToString, True, DataSourceUpdateMode.OnPropertyChanged))

但绑定到复选框时

chkObsolete.DataBindings.Add(New Binding("Checked", ioBLL.ioDAL, namespace.Country.Schema.Columns.GetColumn("Obsolete").ToString, True, DataSourceUpdateMode.OnPropertyChanged))

当底层属性值为True时,它永远不会在运行时被勾选。

任何想法为什么?

1 个答案:

答案 0 :(得分:1)

ioBLL.ioDAL.Obsolete是否为布尔值?

我使用非常相似的代码没有问题。

也许唯一的区别是我使用了BindingSource。

IE我在表单上使用了一个bindingsource,并将它的DataSource设置为ioBLL。

我还有其他问题直接将控件绑定到我的实体,但我不记得你描述的问题是其中之一。