Silverlight用图片替换DataGrid中的绑定到Bool类型的列

最终的效果是这样的:
Silverlight用图片替换DataGrid中的绑定到Bool类型的列
Sex列是bool类型:
public class User { public int Age { get; set; } public string Name { get; set; } public bool Sex { get; set; } }
先说一种图片资源的引用方式,在自定义控件中很有用,自定义控件通常我们放在单独的程序集中,只能用下面的方式引用图片:
"/程序集名称;component/图片.png";
实现过程就是:自定义DataGrid模板列和IValueConverter类。


public class BoolToImageConverter : BoolToValueConverter { } public class BoolToValueConverter : IValueConverter { public T FalseValue { get; set; } public T TrueValue { get; set; } public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { if (value == null) return FalseValue; else return (bool)value ? TrueValue : FalseValue; } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return value != null ? value.Equals(TrueValue) : false; } }
代码下载
Tags: 

延伸阅读

最新评论

发表评论