边使用转换器,我希望绑定到整个对象,并将其发送到转换器来使用,而不是绑定到每个单独的属性,所以我可以这样做:结合对象不是财产
Order thisOrder = (Order)values[0];
(注意,它是一个multibinding,其他值都被派去除了thisOrder对象。现在订单类实现INotifyPropertyChanged接口,并提出了相应的事件时,其任何属性的改变,该转换器需要访问多个属性虽然它实际上只需要重新运行其中一个属性的改变,有没有办法绑定到整个对象,以便如果任何属性发生变化,转换器将被评估为增益,还是只绑定到一个属性,但让对象的其余部分也可用作转换器的参数?
详细例子: 订单有以下字段:
- ID
- MarketPrice
- 名称
当MarketPrice变化,转换器需要重新计算基于 ID和市场价。据我所知,目前还没有干净地解决了这一
<MultiBinding Converter="{StaticResource MarketPositionToBrushConverter}">
<Binding RelativeSource="{RelativeSource Self}" Path="Record.DataItem"/>
...
</MultiBinding>
希望我想到了第一种方法!虽然从理论角度来看,这让我在实践层面上很容易让事情完成。我会再等几天来看看是否会出现一个不太危险的解决方案,否则我会执行此操作。 – Neil 2012-07-10 10:38:01