我想为Binding
参数提供文字这是我的代码..
但我只是想使用转换器来改变文本语言
<TextBlock Text="{Binding #mytext goes here#,Converter={StaticResource languageConverter}}"
Style="{StaticResource TbInfo}" />
在上面的文本块中,我想使用languageConverter
即使我可以将类属性直接绑定为字符串或内容,如
public string HEADER_TEXT = {get;set;}
<TextBlock Text="{Binding HEADER_TEXT,Converter={StaticResource languageConverter}}"
Style="{StaticResource TbInfo}" />
答案 0 :(得分:0)
我只想添加另一个静态资源条目:
<UserControl.Resources>
<sys:String x:Key="HeaderText" xmlns:sys="clr-namespace:System;assembly=mscorlib">mytext goes here</sys:String>
</UserControl.Resources>
<TextBlock Text="{Binding Source={StaticResource HeaderText},Converter={StaticResource languageConverter}}" />
或者,如果您真的想要将文本包含在内,那么您可以使用&#34; ConverterParameter&#34;来传递它。但要实现这一点,您需要修改转换器类以使用&#34;参数&#34;如果设置了。
<TextBlock Text="{Binding ConverterParameter='mytext goes here',Converter={StaticResource languageConverter}}" />
另外,我认为@StuartSmith是对的,理想情况下你应该考虑使用.NET globalization/localization framework。这为您提供了更好的运行时性能(本地化的DLL被编译为附属程序集,有效地减少了应用程序的内存占用)。