我正在使用 ResourceDictionary 在 .NET 4 中进行本地化。有人有使用字符串格式的值的解决方案吗?
例如,假设我有一个带有“SomeKey”键的值:
<ResourceDictionary ...>
<s:String x:Key="SomeKey">You ran {0} miles</s:String>
</ResourceDictionary>
在 TextBlock 中使用它:
<TextBlock Text="{DynamicResource SomeKey}" />
例如,我如何将整数与 SomeKey 的值组合作为格式字符串?
您需要以某种方式绑定到 ViewModel.Value,然后使用(嵌套)绑定到格式字符串。
当你只有一个值时:
<TextBlock
Text="{Binding Path=DemoValue, StringFormat={StaticResource SomeKey}}" />
当你也有{1}
等等那么你需要多重绑定。
Edit:
当您确实想更改实时表单中的语言时,明智的方法可能是在 ViewModel 中进行所有格式化。无论如何,我很少在 MVVM 中使用 StringFormat 或 MultiBinding。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)