TreeStruct
{
string id;
string parentId;
ObservableCollection<TreeStruct> children;
}
ObservableCollection<TreeStruct> BuildTree(string rootId, List<TreeStruct> allList)
{
//根据父节点ID进行分组
var dic = allList.GroupBy(x => x.parentId).ToDictionary(group => group.Key, group => new ObservableCollection<TreeStruct>(group));
//设置每一项的子节点
foreach (var kv in dic)
{
foreach (var val in kv.Value)
{
if(dic.ContainsKey(val.id))
{
val.children = dic[val.id];
}
}
}
//取出根结点,下面自动成树
return dic[rootId];
}
是https://blog.csdn.net/qq_38516524/article/details/122046824
中方法的C#实现
浙公网安备 33010602011771号