可能是因为绑定的源在启动时还没有初始化完毕,可以尝试将绑定的属性设置为可观察,然后手动调用一次PropertyChanged事件来更新绑定。示例代码如下:
public class ViewModel : INotifyPropertyChanged { private string _name;
public string Name
{
get { return _name; }
set
{
if (_name != value)
{
_name = value;
OnPropertyChanged(nameof(Name));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
在XAML中绑定的时候,将绑定的属性设置为可观察属性即可:
这样,在ViewModel中Name属性值改变时就会自动更新XAML中的TextBlock控件。
上一篇:绑定在菜单项标题上导致空白项