【发布时间】:2011-07-06 18:47:42
【问题描述】:
如何指定混合了一些 TEXT 和 Binding 路径的按钮的内容?
像这样:
<Button Content= "TEXT" + "{Binding Path=ButtonContent}"
【问题讨论】:
-
你在说
StringFormat吗?
标签: wpf xaml binding wpf-controls
如何指定混合了一些 TEXT 和 Binding 路径的按钮的内容?
像这样:
<Button Content= "TEXT" + "{Binding Path=ButtonContent}"
【问题讨论】:
StringFormat吗?
标签: wpf xaml binding wpf-controls
类似这样的:
<Button>
<Button.Content>
<TextBlock Text="{Binding SomeBindingPath, StringFormat='Some text {0}'}"/>
</Button.Content>
</Button>
或
<Button>
<Button.Content>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Some Text"/>
<TextBlock Text="{Binding SomeBindingPath}"/>
</StackPanel>
</Button.Content>
</Button>
基本上,您可以使用上述方法将任何内容放入按钮中。
【讨论】:
在大多数情况下,您可以在绑定中使用 StringFormat,例如 TextBlock
<TextBlock Text="{Binding ElementName=textBox,
Path=Text,
StringFormat='{}{0} - Added Text'}"/>
但是,这对ContentControl(Button 继承自)没有影响。相反,您可以使用ContentStringFormat
<Button Content="{Binding ElementName=textBox,
Path=Text}"
ContentStringFormat="{}{0} - Added Text"/>
还有,对于
ContentControl你用ContentStringFormat
HeaderedContentControl 你用HeaderStringFormat
ItemsControl你用ItemStringFormat
【讨论】:
在其他答案的基础上,这更简洁:
<Button Content="{Binding FirstName, StringFormat='Click here, {0}!'}" />
【讨论】: