微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

修改ObservableCollection以省略重复的子值

如何解决修改ObservableCollection以省略重复的子值

我有一个自定义类,我们称它为MyObject,它表示类似于TreeView的东西。我的对象具有称为isSelectedtitleitems属性itemsList,其中可以包含另外List个项目。 / p>

我创建了一个MyObject ObservableCollection<MyObject> myCollection的ObservableCollection。

myCollection返回如下数据:

MyObject[index] -> isSelected,items[index],title -> items[index] -> isSelected,title

在可视化时看起来像这样:

Roottitle

    ChildItem Title

        ChildItem's ChildItem Title
    Repeated ChildItem
        ChildItem's ChildItem Title

我的问题是,有时我的第一个ChildItem具有重复的标题。发生这种情况时,我希望数据看起来像这样:

Roottitle

    ChildItem Title //only one,even if repeated title

        ChildItem's ChildItem Title // both childItem's ChildItem for the repeated title
        ChildItem's ChildItem Title

如何修改我的ObservableCollection以实现此行为?

这是我用来向对象添加项目的代码,如果有帮助的话:

root = new MyObject() { Title = some.data.property.ToString() };
childItem = new MyObject() { Title = some.data.secondProperty.ToString() };
childItem.Items.Add(new MyObject() { Title = some.data.thirdProperty.ToString()() });
root.Items.Add(childItem);

谢谢。

解决方法

您可以做这样的事情。

batchStore

我不确定它是否与“孙子代”有关,因为在创建子代时添加了它们,因此可能会得到解决,但是如果您简化了问题的代码,不是这样的话在else中执行相同的检查。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。