C#中的Concat数据绑定和静态文本

时间:2015-07-26 21:25:43

标签: c# data-binding

所以我有一个带有数据绑定的文本框,但我想在我的xaml代码中添加静态文本。

<TextBlock Text="{Binding Preptime}"></TextBlock>

这只会显示分钟数,我希望它显示为:“准备时间:55分钟”

        public String Preparation
    {
        get { return "Preparation time: " + Preptime + " minutes"; }
    }

我知道我可以使用一个getter,这将是一个干净的解决方案,但必须有一种方法将它直接写入我的xaml?

提前致谢!

3 个答案:

答案 0 :(得分:7)

在绑定上使用属性StringFormat

<TextBlock Text="{Binding Preptime, StringFormat=Preparation time: {0} minutes}"></TextBlock>

它的行为与String.Format

相同

答案 1 :(得分:2)

您可以直接在TextBlock的Text属性上使用StringFormat,就像在.cs中使用string.format一样

答案 2 :(得分:1)

经过一些额外的搜索后,我发现使用run可能是最简单的解决方案。更多信息:Windows Phone 8.1 XAML StringFormat

                <TextBlock>
                <Run Text="Preparation time: "></Run>
                <Run Text="{Binding Preptime}"></Run>
                <Run Text=" minutes."></Run>
            </TextBlock>