我有一个客户类,它有一个字节数组属性。 应用程序使用字节数组作为图像的来源。 当我更改此数组时,UI不会更新(因为byte []不是ObservableCollection)。没有ObservableCollection的Wpf更新UI
我什么时候可以强制UI刷新?
编辑:图像被保存为一个字节数组,因为它如何坐在数据库(varbinary(MAX))。我试图改变类型的IList但突然出现的NHibernate错误:无法确定类型System..IList
我有一个客户类,它有一个字节数组属性。 应用程序使用字节数组作为图像的来源。 当我更改此数组时,UI不会更新(因为byte []不是ObservableCollection)。没有ObservableCollection的Wpf更新UI
我什么时候可以强制UI刷新?
编辑:图像被保存为一个字节数组,因为它如何坐在数据库(varbinary(MAX))。我试图改变类型的IList但突然出现的NHibernate错误:无法确定类型System..IList
让你的类实现INotifyPropertyChanged
只要Byte数组的变化,提高PropertyChanged
事件。
例如:
class Customer : INotifyPropertyChanged
{
private byte[] byteArray;
public byte[] ByteArray
{
get
{
return byteArray;
}
set
{
if (value != byteArray)
{
byteArray = value;
RaisePropertyChanged("ByteArray");
}
}
}
private void RaisePropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName);
}
}
public event PropertyChangedEventHandler PropertyChanged;
}
它确实是有点额外的代码,但它的合理性和更好的再重装整个窗口。谢谢 – user779444
你或许应该看看INotifyPropertyChanged的 – Khan