C# ReactiveUI双向绑定复选框

C# ReactiveUI双向绑定复选框,c#,mvvm,reactiveui,C#,Mvvm,Reactiveui,我有一个带有复选框的简单视图和一个带有[Reactive]bool属性的viewModel 我希望更改UI上的复选框以传播到viewModel属性,但我也希望在viewModel属性由外部因素更新时更新UI复选框状态 我假设双向绑定可以做到这一点 this.Bind(ViewModel, viewModel=>viewModel.DepthLabel, 视图=>视图。_depthLabel.IsChecked) .处置(一次性) …但当字段属性因外部因素而更改时,UI没有响应 我可以做些什么来更

我有一个带有复选框的简单视图和一个带有
[Reactive]
bool属性的viewModel

我希望更改UI上的复选框以传播到viewModel属性,但我也希望在viewModel属性由外部因素更新时更新UI复选框状态

我假设双向绑定可以做到这一点

this.Bind(ViewModel,
viewModel=>viewModel.DepthLabel,
视图=>视图。_depthLabel.IsChecked)
.处置(一次性)

…但当字段属性因外部因素而更改时,UI没有响应

我可以做些什么来更新UI?如果这不是双向绑定的目的,那么应该在什么时候使用它

我可以做些什么来更新UI

确保在调度程序线程上设置了
DepthLabel
source属性

例如,在以下示例代码中,要更新视图中的
复选框
,需要调用
ObserveOnDispatcher()

public class ViewModel : ReactiveObject
{
    [Reactive]
    public bool DepthLabel { get; set; }

    public ViewModel()
    {
        Observable.Timer(TimeSpan.FromSeconds(2))
           .ObserveOnDispatcher()
           .Subscribe(_ => DepthLabel = true);
    }
}

属性在timespan之后设置,但UI未设置update@SlackGroverglow:是吗?是现在吗?我现在发现我的问题是我的ViewModel没有继承
ReactiveObject
。奇怪的是,您仍然可以使用
[Reactive]
而没有错误或警告。