在XAML通用Windows平台中将附加字符串添加到{x:Bind}

在XAML通用Windows平台中将附加字符串添加到{x:Bind},xaml,windows-store-apps,uwp,Xaml,Windows Store Apps,Uwp,我是XAML的新手。我想向x:bind添加额外的字符串 我试过了 <AppBarToggleButton Icon="Phone" Label="E-Mail To {x:Bind e_mail}" /> <AppBarToggleButton Icon="Phone" Label="{"E-Mail To" + x:Bind e_mail}" /> 我想收到“电子邮件”email@email.com" 但是没有成功。感谢您的帮助。为此创建一个转换器: publ

我是XAML的新手。我想向x:bind添加额外的字符串

我试过了

<AppBarToggleButton Icon="Phone" Label="E-Mail To {x:Bind  e_mail}" />
<AppBarToggleButton Icon="Phone" Label="{"E-Mail To" + x:Bind  e_mail}" />

我想收到“电子邮件”email@email.com"


但是没有成功。感谢您的帮助。

为此创建一个转换器:

public sealed class StringFormatConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        if (value == null)
            return null;

        if (parameter == null)
            return value;

        return string.Format(parameter.ToString(), value);
    }

    public object ConvertBack(object value, Type targetType, object parameter, 
        string language)
    {
        throw new NotImplementedException();
    }
}
将此添加到您的页面/控件/应用程序资源:

<converters:StringFormatConverter x:Key="StringFormatConverter" />

然后像这样使用它:

<TextBlock Text="{x:Bind e_mail}" 
    Converter="{StaticResource StringFormatConverter}" 
    ConverterParameter="E-Mail To {0}!" />

您可以使用以下命令,而不是创建自己的
StringFormatConverter


还有一些其他有用的内置转换器,请查看:

使用绑定转换器。