【发布时间】:2009-05-13 13:53:01
【问题描述】:
我目前需要一个自定义的 ListViewItem 类 - 我们称之为 MyListViewItem。它需要与每个项目关联一些附加数据,并在 Checked 属性更改时执行一些操作。我尝试了几件事,但目前相关代码如下所示:
class MyListViewItem : ListViewItem {
new public bool Checked {
get {
return base.Checked;
}
set {
base.Checked = value;
// do some other things here based on value
}
}
public MyListViewItem(Object otherData) {
// ...
}
}
我遇到的问题是,当我单击 ListView 中项目的复选框时,我的 setter 永远不会被调用。有谁知道我做错了什么?我知道我可以使用父 ListView 的 ItemChecked 事件,但这似乎是一个不太干净的解决方案。 (另外我实际上并没有将 Object 传递给构造函数,但这部分在这里并不重要)。
【问题讨论】:
-
好吧,如果有人感兴趣,我最终会处理我的数据与自定义数据的 getter/setter 中的 Checked 属性之间的交互。不知道为什么我以前没有想到这一点。
标签: c# inheritance properties