String Textblock上的多个绑定,包括向绑定末尾添加字符串

String Textblock上的多个绑定,包括向绑定末尾添加字符串,string,windows-phone-7,binding,textblock,String,Windows Phone 7,Binding,Textblock,有没有一种方法可以将两个绑定“添加”在一起并向它们添加一些字符串?这很难解释,但可以在XAML代码中绑定到TextBlock,例如: <TextBlock Name="FirstName" Text="{Binding FN}" /> 我想做的是: <TextBlock Name="FirstLastName" Text="{Binding FN} + ', ' + {Binding LN}" /> 所以本质上你会得到这样的结果: <TextBlock

有没有一种方法可以将两个绑定“添加”在一起并向它们添加一些字符串?这很难解释,但可以在XAML代码中绑定到TextBlock,例如:

<TextBlock Name="FirstName" Text="{Binding FN}" />

我想做的是:

<TextBlock Name="FirstLastName" Text="{Binding FN} + ', ' + {Binding LN}" />

所以本质上你会得到这样的结果:

<TextBlock Name="FirstName" Text="{Binding FN}" />
迪恩,格罗布勒


提前谢谢

首先想到的是在
VM
中创建包含串联值的附加属性:

public string FullName
{
    get { return FN + ", "+ LN; }
}

public string FN
{
    get { return _fN; }
    set 
    {
        if(_fn != value)
        {
            _fn = value;
            FirePropertyChanged("FN");
            FirePropertyChanged("FullName");
        }
    }

}

public string LN
{
    get { return _lN; }
    set
    {
        if(_lN != value)
        {
            _lN = value;
            FirePropertyChanged("LN");
            FirePropertyChanged("FullName");
        }
    }
}
另一种可能有用的方法是使用转换器。但在这种情况下,我们假设
FN
LN
是同一对象的属性:

VM

public Person User
{
    get { return _user; }
    set
    {
        if(_user != value)
        {
            _user = value;
            FirePropertyChanged("User");            
        }
    }
}

我也喜欢这个。然而,这两个方面的主要问题是,在文本框的情况下,转换回原来的格式。这真的只是一种方式。