Joe*_*uer 6 c# data-binding wpf user-interface xaml
我能够将静态类属性绑定到 MenuItem 标头,但我无法确定如何包含 StringFormat 以便我可以显示除该属性之外的硬编码文本。
这可能吗?
当前:(显示“SQLSERVER1”)
Header="{x:Static settings:Settings.CurrentServer}"
Run Code Online (Sandbox Code Playgroud)
所需:(显示“连接:SQLSERVER1”)
Header="{Binding Source={x:Static Settings:Settings.CurrentServer},StringFormat='Connection: {0}'}"
Run Code Online (Sandbox Code Playgroud)
当我尝试 XAML 中的“Desired”行时,StringFormat 被完全忽略。我究竟做错了什么?
从 .NET 5 开始,以下内容对我有用:
<Window Title="{Binding Source={x:Static vm:ApplicationSettings.ProductName}, StringFormat='{}{0} Document'}" />
Run Code Online (Sandbox Code Playgroud)
其中ProductName定义为:
public static string ProductName {get { ... ; } }
Run Code Online (Sandbox Code Playgroud)
MenuItem提供了HeaderStringFormat您应该使用的属性:
<MenuItem Header="{Binding Source={x:Static Settings:Settings.CurrentServer}}"
HeaderStringFormat="Connection: {0}" />
Run Code Online (Sandbox Code Playgroud)
实际上,该属性是 的一部分HeaderedItemsControl,而它MenuItem恰好是扩展的。
该StringFormat属性只是被忽略。
| 归档时间: |
|
| 查看次数: |
1895 次 |
| 最近记录: |