GroupBox header 绑定中的 StringFormat 似乎不起作用
StringFormat in GroupBox header binding doesn't seem to work
我正在尝试将 GroupBox
的 header 文本绑定到 属性 并使用 StringFormat
显示它。
第一部分有效,return文本符合预期。但我希望最终文本被格式化。例如当我return cm
我想让它显示为Foundation Height (cm)
,但是下面的代码只显示cm
.
<GroupBox Header="{Binding CurrentTargetUnit,
Converter={StaticResource QuantityToTextConverter},
ConverterParameter={x:Static enumerations:Quantity.Length},
StringFormat='Foundation Height ({0})'}">
</GroupBox>
不加引号试试
....
StringFormat=Foundation Height ({0})}">
更新
因为您已经为 header 使用了绑定,所以您应该使用 HeaderStringFormat
。
....
HeaderStringFormat=Foundation Height ({0})}">
阅读documentation了解更多
试试这个:
StringFormat={}Foundation Height ({0})}">
我遇到了同样的问题。我找到了答案 here.
<GroupBox>
<GroupBox.Header>
<TextBlock Text="{Binding CurrentTargetUnit,
Converter={StaticResource QuantityToTextConverter},
ConverterParameter={x:Static enumerations:Quantity.Length},
StringFormat=Foundation Height ({0})}">
</GroupBox.Header>
</GroupBox>
您还需要从 StringFormat 中删除引号。此外,在上面的 link 中,它显示将“{}”放在 StringFormat 中的任何内容之前。如果我没记错的话,你只需要占位符是第一个:StringFormat={}{0:C}
允许 StringFormat 绑定的元素数量有限,TextBlock 是一个,而 GroupBox headers 不允许。
我正在尝试将 GroupBox
的 header 文本绑定到 属性 并使用 StringFormat
显示它。
第一部分有效,return文本符合预期。但我希望最终文本被格式化。例如当我return cm
我想让它显示为Foundation Height (cm)
,但是下面的代码只显示cm
.
<GroupBox Header="{Binding CurrentTargetUnit,
Converter={StaticResource QuantityToTextConverter},
ConverterParameter={x:Static enumerations:Quantity.Length},
StringFormat='Foundation Height ({0})'}">
</GroupBox>
不加引号试试
....
StringFormat=Foundation Height ({0})}">
更新
因为您已经为 header 使用了绑定,所以您应该使用 HeaderStringFormat
。
....
HeaderStringFormat=Foundation Height ({0})}">
阅读documentation了解更多
试试这个:
StringFormat={}Foundation Height ({0})}">
我遇到了同样的问题。我找到了答案 here.
<GroupBox>
<GroupBox.Header>
<TextBlock Text="{Binding CurrentTargetUnit,
Converter={StaticResource QuantityToTextConverter},
ConverterParameter={x:Static enumerations:Quantity.Length},
StringFormat=Foundation Height ({0})}">
</GroupBox.Header>
</GroupBox>
您还需要从 StringFormat 中删除引号。此外,在上面的 link 中,它显示将“{}”放在 StringFormat 中的任何内容之前。如果我没记错的话,你只需要占位符是第一个:StringFormat={}{0:C}
允许 StringFormat 绑定的元素数量有限,TextBlock 是一个,而 GroupBox headers 不允许。