1

我有一个显示信号频率(例如 10 Hz)的 TextBlock:

<TextBox Name="Frequency" Text="{Binding Path=Frequency, StringFormat={}{0} Hz}"

现在我想本地化“Hz”。理想情况下,只使用 DynamicResource 作为 String.Format 的一部分:

<TextBox Name="Frequency" Text="{Binding Path=Frequency, StringFormat={}{0} {DynamicResource Measure/Hz}}"

但它不起作用。我也在考虑 MultiBinding,但看起来没有简单的方法来访问 DynamicResource。

当然,我可以在 ViewModel 中结合频率值和频率度量并绑定它。但我很好奇是否有一个不错的纯 UI 解决方案。

4

1 回答 1

0

您可以将 MultiBinding 与 StringFormat {]{0} {1} 结合使用,并将第二个绑定绑定到包含您的“Hz”的资源,该资源可以作为字符串类型的资源存储在 resx 文件或 xaml 中。

将资源字符串设置为 XAML

于 2013-05-07T13:25:45.660 回答