C# WP7将复选框绑定到sql数据库位C
我试图将checkboxs IsChecked属性绑定到存储在sql数据库中作为参考底图的位值 页面的数据上下文是一个房间对象,从数据库中提取,其中包含存储的位C# WP7将复选框绑定到sql数据库位C,c#,sql,wpf,xaml,data-binding,C#,Sql,Wpf,Xaml,Data Binding,我试图将checkboxs IsChecked属性绑定到存储在sql数据库中作为参考底图的位值 页面的数据上下文是一个房间对象,从数据库中提取,其中包含存储的位 newPiv.DataContext = viewModel.db.Rooms.SingleOrDefault(r => r.RoomId == roomNumber); xaml代码 <CheckBox x:Name="underlayCB" IsChecked="{Binding Underlay, Mode=TwoW
newPiv.DataContext = viewModel.db.Rooms.SingleOrDefault(r => r.RoomId == roomNumber);
xaml代码
<CheckBox x:Name="underlayCB" IsChecked="{Binding Underlay, Mode=TwoWay, UpdateSourceTrigger=Explicit}" />
数据库:
private System.Nullable<bool> _Underlay;
partial void OnUnderlayChanging(System.Nullable<bool> value);
partial void OnUnderlayChanged();
[Column(Storage = "_Underlay", DbType = "Bit")]
public System.Nullable<bool> Underlay
{
get
{
return this._Underlay;
}
set
{
if ((this._Underlay != value))
{
this.OnUnderlayChanging(value);
this.SendPropertyChanging();
this._Underlay = value;
this.SendPropertyChanged("Underlay");
this.OnUnderlayChanged();
}
}
}
我在同一页面和应用程序中的其他页面上有几个其他绑定都可以正常工作,有人能告诉我我缺少了什么吗?您已将绑定的UpdateSourceTrigger设置为Explicit,这要求您调用Binding.UpdateSource您的setter调用的方法之一可以做到这一点吗?为什么不将其保留为默认值或属性更改
INotifyPropertyChanged的事件是否已引发
顺便说一下,而不是
private System.Nullable<bool> _Underlay;
在我看来,这是一个可为空的布尔,一点也不。你试了什么?调试绑定错误时是否监视了调试窗口?通过将绑定UpdateSourceTrigger更改回默认值并将数据库条目更改为非空,我使绑定正常工作,但如果更改超过三次,则会使应用程序崩溃。我不知道您为什么将其更改为非空,崩溃是另一个问题,查找异常并跟踪堆栈跟踪
private bool? _Underlay;