我有一个C#Silverlight应用程序。在这个应用程序中,我已经定义了一个我在XAML中使用的值转换器。我遇到了一种情况,我需要以编程方式在我的代码后面使用这个值转换器。我的问题是,我该怎么做?在XAML中,我使用我的值转换器如下:
<TextBlock x:Name="myTextBlock" Text="{Binding Mode=OneWay, Path=FirstName, Converter={StaticResource myConverter}, ConverterParameter=NotSet}" />
如何在代码隐藏中使用此转换器?
谢谢!
答案 0 :(得分:11)
如果您只想在后面的代码中显式调用转换器,只需像使用其他类一样使用转换器类,并使用适当的参数调用其Convert()方法
YourConverter conv = new YourConverter();
conv.Convert(...)
答案 1 :(得分:0)
答案 2 :(得分:0)
我亲自向转换器添加静态方法,如下所示:
public static object Convert(object value)
{
return new MyConverter().Convert(value, null, null, CultureInfo.CurrentCulture);
}
然后您可以在代码中使用此代码,如下所示:
MyConverter.Convert(valueToConvert);
您甚至可以更改返回类型并在返回之前强制转换结果,以简化用法。