【问题标题】:Specifying a Button Content that has mix of text and a Binding path指定包含文本和绑定路径的按钮内容
【发布时间】:2011-07-06 18:47:42
【问题描述】:

如何指定混合了一些 TEXT 和 Binding 路径的按钮的内容?

像这样:

<Button Content= "TEXT" + "{Binding Path=ButtonContent}"

【问题讨论】:

  • 你在说StringFormat吗?

标签: wpf xaml binding wpf-controls


【解决方案1】:

类似这样的:

<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>

基本上,您可以使用上述方法将任何内容放入按钮中。

【讨论】:

    【解决方案2】:

    在大多数情况下,您可以在绑定中使用 StringFormat,例如 TextBlock

    <TextBlock Text="{Binding ElementName=textBox,
                              Path=Text,
                              StringFormat='{}{0} - Added Text'}"/>
    

    但是,这对ContentControlButton 继承自)没有影响。相反,您可以使用ContentStringFormat

    <Button Content="{Binding ElementName=textBox,
                              Path=Text}"
            ContentStringFormat="{}{0} - Added Text"/>
    

    还有,对于

    • ContentControl你用ContentStringFormat
    • HeaderedContentControl 你用HeaderStringFormat
    • ItemsControl你用ItemStringFormat

    【讨论】:

      【解决方案3】:

      在其他答案的基础上,这更简洁:

      <Button Content="{Binding FirstName, StringFormat='Click here, {0}!'}" />
      

      【讨论】:

        猜你喜欢
        • 2012-04-02
        • 2017-07-30
        • 2012-07-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-11
        • 2010-11-01
        相关资源
        最近更新 更多