【发布时间】:2013-08-11 00:24:46
【问题描述】:
我正在做的是这样的:
Item.PropertyChanged += (sender, args) =>
{
if(sender is IInterface)
DoSomethingWith(((IInterface)sender).PropertyFromInterface);
}
我将如何在 RxUI 中实现这样的流?
我试过了:
this.WhenAny(x => (x.Item as IInterface).PropertyFromInterface, x.GetValue())
.Subscribe(DoSomethingWith);
但似乎不可能做到。
我必须做这样的财产吗? ->
private IInterface ItemAsInterface { get { return Item as IInterface; } }
我现在做了一个这样的解决方法:
this.WhenAny(x => x.Item, x => x.GetValue()).OfType<IInterface>()
.Select(x => x.PropertyFromInterface).DistinctUntilChanged()
.Subscribe(DoSomethingWith);
但我真正想要的是在 Item 属于 IInterface 时获取“PropertyFromInterface”的 propertychanged 更新。
【问题讨论】:
标签: c# reactiveui