0

我使用reactiveUI来查看DP的属性代码是

/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
    public MainWindow()
    {
        RxApp.DeferredScheduler = DispatcherScheduler.Current;
        InitializeComponent();
        this.WhenAny(i => i.Width, i => i.Value).Subscribe(_ => SomeMethod("Width"));
        this.WhenAny(i => i.Height, i => i.Value).Subscribe(_ => SomeMethod("Height"));
    }

    void SomeMethod(string hello)
    {
        MessageBox.Show(hello);
    }

}

当我按高度调整窗口大小时,没有消息框但是当我按宽度调整窗口大小时,有两个消息框当我评论其中任何一个时,它工作得很好,但有两个时任何工作不正常

我知道我可以通过一个 whenany 观察两个属性,但我需要通过两个 WhenAny 观察两个不同类型的依赖属性

我怎样才能做到这一点?

4

1 回答 1

1

嗯。您可以在http://github.com/reactiveui/reactiveui/issues提交此错误吗?同时,您可能必须使用垫片,例如:

var changedObservable = new Subject<Unit>();
this.SizeChanged += (o,e) => changedObservable.OnNext(Unit.Default);
于 2012-12-21T19:40:54.297 回答