6
我有一個PriorityBinding如果返回的值爲Null,如何使PriorityBinding失敗?
<PriorityBinding FallbackValue="Bindings were null">
<Binding Path="Foo" />
<Binding Path="Bar" />
</PriorityBinding>
我想使它所以如果foo是空它將使用吧,如果都爲null,將使用FallbackValue。但是null是這個屬性的有效值,因爲它只需要一個對象。
當值爲空時,有什麼辦法讓PriorityBinding提前到下一個綁定?我更喜歡用XAML來做,但如果我做不到,我只會爲它做一個轉換器。
編輯
最後我只是寫一個轉換器,它
public class NullToDependencyPropertyUnsetConverter
: IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return value ?? DependencyProperty.UnsetValue;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
看看這個:http://stackoverflow.com/questions/6947728/equiv-to-coalesce-in-xaml-binding – 2011-08-25 00:19:01
我想知道這種事情。我的對象有很多非空屬性,所以當我嘗試使用PriorityBinding時,我最終得到空白值而不是下一個列表。 – Patrick 2013-02-06 14:33:46