gpt4 book ai didi

c# - 在 ListView 的 List 中访问 List 的不同值

转载 作者:行者123 更新时间:2023-11-30 23:14:09 28 4
gpt4 key购买 nike

我有一个列表“RootObject”,其中包含另一个列表“Components”。所以基本上每个 RootObject 都可以有很多组件。我需要从“组件”中获取所有 Distinct 值以绑定(bind)到 ListView。

public class RootObject
{
public string id { get; set; }
public List<string> Components { get; set; }
public string name { get; set; }
}

我想我可能需要使用 SelectMany 但不确定如何获取它们...例如,我将我的根对象放入

mylist = deserial.Deserialize<List<RootObject>>(response);

这行得通。然后我需要将组件列表放入 ListView

`ListView.DataSource = //get list of Components`

最佳答案

这会将不同的组件放入列表中:

var distinctComponents = rootObjects
.SelectMany(r => r.Components)
.Distinct()
.OrderBy(c => c)
.ToList();

我不知道你使用的是哪种GUI技术,但是一个winforms ListView没有简单的绑定(bind)机制。您需要手动添加项目和子项目。因此,您也可以删除 ToList() 并直接在 foreach 语句中枚举查询。

关于c# - 在 ListView 的 List 中访问 List 的不同值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43295341/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com