首页 > 解决方案 > 视图中的 WPF ReactiveUI 绑定

问题描述

我正在使用 Rx 和 ReactiveUI 创建一个 WPF 应用程序。我是否必须在后面的代码中被动地绑定视图中的属性,还是经典方式好?我知道 View 和 ViewModel 对象之间的绑定,我只是不知道这些 xaml 绑定是否应该有不同的方式。

<Label x:Name="FilterLabel"
   ...
   Width="{Binding ActualWidth, ElementName=TemplateLabel}"
   .../>

这是可以的还是有更“专业”的方式?

this.WhenActivated(d => {
    this.OneWayBind(ViewModel, vm => vm.Toolbar,   v => v.ToolbarView.ViewModel).DisposeWith(d);
});

这就是我做我的 ViewModel -> View bindings 的方式

标签: c#wpfxamlreactiveuirx.net

解决方案


对于视图到视图绑定,您可以在 View 代码隐藏中使用以下语法:

this.WhenAnyValue(x => x.TemplateLabel.ActualWidth)
    .BindTo(this, view => view.FilterLabel.Width)
    .DisposeWith(disposable);

推荐阅读