【发布时间】:2015-09-18 09:34:17
【问题描述】:
这是我的模型类,我对这个问题感兴趣的专栏:
public class Cell : INotifyPropertyChanged
{
public string TestImageAspect
{
get { return testImageAspect; }
set
{
testImageAspect = value;
Console.WriteLine("OnPropertyChanged => testImageAspect");
this.OnPropertyChanged("OperationResult");
}
}
private string testImageAspect;
}
ImageList 已准备好所需的图像。在ObjectListView 中,我将相应列的 ImageAspectName 设置为属性名称:
然后点击按钮我运行下面的代码来改变
Cell c = ...;
c.TestImageAspect = "success"; // the name exist in ImageList
在上面的代码之后,我看到 OnPropertyChanged 已被调用,但是 UI 没有更新,除非我将鼠标悬停在它必须更改的行上,然后我会看到新图标。我不是在寻找肮脏的解决方法,因为我知道的很少,而是想了解 ObjectListView 是否必须更新 UI 本身。如果是,我做错了什么?
【问题讨论】:
-
你设置
UseNotifyPropertyChanged = true了吗?您可以使用简单的字符串属性进行尝试。可能是图像和 OwnerDraw 模式的错误。 -
啊,就是这样,太棒了 :) 在我看来,它的文档记录不是很好。
-
很好,如果您不介意,我会发布答案。
-
@Rev1.0,请继续。
标签: c# objectlistview