【问题标题】:Concatenate StaticResources in WPF在 WPF 中连接静态资源
【发布时间】:2019-08-15 18:03:05
【问题描述】:

我需要将字符串资源中的两个字符串连接成一个标签。 我想要这样的东西

<Label Content="{StaticResource Menu + " " + Name}"></Label>

我该怎么做? 任何帮助表示赞赏。

【问题讨论】:

  • 与任何字符串属性一起使用的 Ash 的答案的替代方法是使用 MultiBindingStringFormat

标签: wpf xaml


【解决方案1】:

当 Content 是 string 时,框架会在后台创建一个 TextBlock 来显示它。所以

<Label Content="Smth"/>

变成了

<Label>
    <TextBlock Text="Smth"/>
</Label>

您可以在 xaml 中添加 TextBlock 并从资源中显式分配两个字符串:

<Label>
    <TextBlock>
        <Run Text="{StaticResource Menu}"/>
        <Run Text="{StaticResource Name}"/>
    </TextBlock>
</Label>

【讨论】:

  • 感谢您的回答 :))
  • 您将如何在 Xamarin 项目中执行此操作? TextBlock 不在工具箱中。 Another answer 建议使用 FormattedStringSpans 而不是 TextBlockRuns 但属性 (ClassId) 我正在尝试使用它说 Property 'ClassId' 确实不支持“FormattedString”类型的值
猜你喜欢
  • 2013-10-23
  • 2022-12-04
  • 1970-01-01
  • 2010-10-25
  • 1970-01-01
  • 1970-01-01
  • 2011-09-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多