转换器中的更改将通知绑定属性的更改?
我有两个属性FirstName和LastName,并使用Multibinidng和converter绑定到一个文本块,以将FullName显示为FirstName + Last Name。
名字=“阿迪”
姓氏=“库玛”
在转换器中,我将LastName更改为“已更改的文本”
values[1] = "Changed Text";
执行转换器后,我的TextBlock将显示“Kishore Changed Text”,但Dependency属性LastName仍然具有最后一个值“Kumar”。为什么我在执行后没有在LastName属性中获得“Changed Text”值?
转换器的更改是否会通知绑定的属性?
<Window.Resources>
<local:NameConverter x:Key="NameConverter"></local:NameConverter>
</Window.Resources>
<Grid>
<TextBlock>
<TextBlock.Text>
<MultiBinding Converter="{StaticResource NameConverter}">
<Binding Path="FirstName"></Binding>
<Binding Path="LastName"></Binding>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</Grid>
转换器:
public class NameConverter:IMultiValueConverter
{
#region IMultiValueConverter Members
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
values[1] = "Changed Text";
return values[0].ToString() + " " + values[1].ToString();
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
#endregion
}
没有找到相关结果
已邀请:
2 个回复
览幕堤分
森含械
当然,那么就不需要MultiBinding了。你可以绑定到对象本身: