如何将2个属性绑定到单个TextBlock.Text(例如,名字和姓氏或当前值和最大值)?
类似的东西:
// IValueConverter
public object Convert( .... )
{
return string.Format("{0} (max: {1})", currentValue, maxValue);
}
问题是我希望在currentValue
或 maxValue
发生更改时更新TextBlock.Text。那么如何使用数据绑定来监听2个或更多属性的更改呢?
除了用户IValueConverter
还有其他方法吗?
答案 0 :(得分:9)
Silverlight 3(构建Windows Phone 7框架)不支持MultiBinding,这是您用来实现所需的功能。但是,您可以使用帖子MultiBinding for Sivlerlight 3中描述的解决方案,该解决方案也适用于WP7。
或者,您可以扩展视图模型(或至少是您公开的属性)以公开聚合您的值的属性,并在更改时引发属性更改通知。
答案 1 :(得分:2)
如果您正在使用WP7.1(我知道您提到过WP7),请查看Cimbalino Windows Phone Toolkit。它提供MultiBindingBehavior。