我有一个像下面的字符串。

string someInfo = string.Format("First Name = {0}, Last Name = {1}",firstName, lastName);


此字符串需要使用TextBlock在应用程序中显示。名字和姓氏来自数据库,因此我想为此使用数据绑定。有可能吗?

最佳答案

是的,有可能。

但是,由于您具有多个绑定,因此需要绑定到MultiBindingMSDN)。

您的绑定看起来像:

  <TextBlock.Text>
    <MultiBinding Converter="{StaticResource NameConverter}">
      <Binding Path="FirstName"/>
      <Binding Path="LastName"/>
    </MultiBinding>
  </TextBlock.Text>


使用MultiValueConverter

public class NameConverter : IMultiValueConverter
{
    public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
    {
        return string.Format("First Name = {0}, Last Name = {1}", values[0], values[1]);
    }
    public objct ConvertBack(...)
    {
        return Binding.DoNothing;
    }
}

10-06 11:24