我想扩展TreeViewItem来添加一个属性。使它复杂化的是它有一个“Items”属性,它是一个相同类类型的列表。添加一个属性将需要我重写我不想做的子属性。这是原始TreeViewItem:如何在不重写的情况下向类添加属性?
public class TreeViewItem : NavigationItem<TreeViewItem>, INavigationItemContainer<TreeViewItem>, ITreeViewItem
{
public IList<TreeViewItem> Items { get; }
}
如何添加MyProperty而不被强制覆盖“Items”属性。很多事情发生在我不想重新创建的“Items”属性中。感谢您的任何帮助或建议。
这个问题不是很清楚。如果添加名为MyProperty的属性,则既不会覆盖也不会隐藏现有的Items属性。你为什么认为你会被迫改写'Items'? – phoog 2012-03-26 21:20:49
因为我希望Items的子项具有新的MyProperty。否则,只有最高级别的根父级才具有该属性。 – TruMan1 2012-03-26 21:22:30
啊哈,我明白了。答案即将出炉。 – phoog 2012-03-26 21:23:55