我在网上找到了这段小代码:
public abstract class ConverterExtension<T>: MarkupExtension, IValueConverter
where T: class, new()
{
private static T _converter = null;
public override Object ProvideValue(IServiceProvider serviceProvider)
{
return _converter ?? (_converter = new T());
}
public abstract Object Convert(Object value, Type targetType, Object parameter, CultureInfo culture);
public abstract Object ConvertBack(Object value, Type targetType, Object parameter, CultureInfo culture);
}
它基本上做了两件事:
1.创建一个单例(非常方便)
2.允许您在不创建静态控件的情况下使用转换器(MarkupExtension
)
我想知道的是,如果我使用 Prism v4 作为我的框架,是否已经内置了类似的东西。我宁愿使用 Prism 内置的任何工具,也不愿编写类似或重复的代码。我对 Prism 不是很熟悉,但我在里面找不到这样的东西。哦,我也有类似的功能IMultiValueConverter
。