我想创建一个可见性转换器,如果可观测集合为空或null,它会显示内容。由于该转换器将在许多屏幕上使用,因此每个集合将持有不同类型(T(。
如何获得对未知类型的ObservableCollection的引用。这就是我目前所拥有的:
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null) return Visibility.Visible;
if (value is ObservableCollection<object>)
{
var col = value as ObservableCollection<object>;
return col.Count > 0 ? Visibility.Hidden : Visibility.Visible;
}
return Binding.DoNothing;
}
您不必这么做。只需转换为ICollection
并获得其Count
即可。