【问题标题】:C# WPF static resource containing other static resourcesC# WPF静态资源包含其他静态资源
【发布时间】:2022-12-04 21:39:55
【问题描述】:

我刚开始学习 WPF,但我似乎无法弄清楚如何在 XAML 中组合两个或多个字符串静态资源。我有两个静态资源,UntitledFileName(“无标题”)和ApplicationName(“SomeAppName”)。第三个资源,DefaultWindowTitle,应该由上述资源组成,并且应该包含值“Untitled - SomeAppName”。定义DefaultWindowTitle时应该如何指定这两个静态资源?

<sys:String x:Key="UntitledFileName">Untitled</sys:String>
<sys:String x:Key="ApplicationName">SomeAppName</sys:String>
<sys:String x:Key="DefaultWindowTitle">...</sys:String>

【问题讨论】:

  • 没门。 XAML 是一种声明性语言,而不是算法语言。您可以通过使用 StringFormat 将 DependencyProperty 设置为 MultiBining 将两个字符串转换为一个。
  • 我建议在文本块中运行两次。每次运行的文本设置为静态资源,因此在一个文本块中显示为串联。文本块最接近于其他技术中的标签。
  • 我打算使用“DefaultWindowTitle”作为窗口的标题。

标签: c# string wpf xaml staticresource


【解决方案1】:

我打算使用“DefaultWindowTitle”作为窗口的标题。

也许这个实现会适合你:

<Window.Title>
    <MultiBinding StringFormat="{}{0} - {1}">
        <Binding Source="{StaticResource UntitledFileName}"/>
        <Binding Source="{StaticResource ApplicationName}"/>
    <MultiBinding>
</Window.Title>

【讨论】:

    猜你喜欢
    • 2013-08-01
    • 1970-01-01
    • 2010-10-25
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 1970-01-01
    相关资源
    最近更新 更多