[英]Why doesn't ToString work with Data Binding
按照此示例(示例2)进行数据绑定,并根据ArtistName
的值更新UI。
如果xaml绑定是这样写的:
<Label Grid.Column="1" Grid.Row="1" Content="{Binding}" />
代替
<Label Grid.Column="1" Grid.Row="1" Content="{Binding ArtistName}" />
然后在SongViewModel
上调用ToString,即使我这样重写它:
public override String ToString()
{
return Song.ArtistName;
}
该值不会通过DataBinding更新。 其余代码与链接中给出的示例相同。
为什么在这种情况下价值不变?
WPF绑定无法正常工作。
如果您{Binding}
则WPF刷新该绑定的唯一方法是重置DataContext
。 该绑定没有要遵循的PropertyPath
,因此无法调用INotifyPropertyChanged
来刷新这种绑定。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.