【问题标题】:WPF: Multibinding with string literal and property in a triggerWPF:触发器中的字符串文字和属性的多重绑定
【发布时间】:2017-09-21 18:39:10
【问题描述】:

我正在尝试在触发器中设置 TextBlock.Text。如果我在 setter 中绑定属性,一切正常,但是如何“连接”字符串和属性?
例如,我有一个 Date 属性。我希望文本为“日期为 2017 年 9 月 21 日。”
到目前为止,我设法展示了“9/21/2017”,但不知道如何在它之前连接一个字符串(我只向您展示“有趣的部分”):

<DataTrigger Binding="{Binding State}" Value="{x:Static model:Croissant+CroissantState.IsUsed}">
    <Setter Property="Text">
        <Setter.Value>
            <MultiBinding StringFormat="{}{0:d}">
                <Binding Path="Date" />
            </MultiBinding>
        </Setter.Value>
    </Setter>
</DataTrigger>

关于如何绑定字符串文字的任何建议?我必须为此使用转换器还是有“简单的方法”?

【问题讨论】:

  • try Text="{Binding MyProperty, StringFormat=日期是:{0:d}}"
  • 几乎!就我而言,它适用于&lt;Binding Path="Date" StringFormat="The date is {0:d}" /&gt;。谢谢!

标签: wpf xaml multibinding


【解决方案1】:

对于没有阅读评论的任何人,感谢 Ayyappan Subramanian,解决方案是:

<DataTrigger Binding="{Binding State}" Value="{x:Static model:Croissant+CroissantState.IsUsed}">
    <Setter Property="Text">
        <Setter.Value>
            <Binding Path="Date" StringFormat="The date is {0:d}" />
        </Setter.Value>
    </Setter>
</DataTrigger>

【讨论】:

    猜你喜欢
    • 2019-12-15
    • 1970-01-01
    • 2010-12-20
    • 1970-01-01
    • 2014-09-08
    • 2015-03-11
    • 2011-11-10
    • 2017-11-29
    • 1970-01-01
    相关资源
    最近更新 更多