我目前正在尝试使用TreeListView,想知道如何查找三层嵌套对象的值,其中层级顺序是位置、系统、设备。
private void initObjectListView()
{
// Can the given object be expanded?
this.treeListView1.CanExpandGetter = delegate(Object x)
{
return x is Location;
};
// What objects should belong underneath the given model object?
this.treeListView1.ChildrenGetter = delegate(Object x)
{
if (x is Location)
return ((Location)x).systemMap.Values;
throw new ArgumentException("Unknown TreeListView Object - Should a Location Type");
};
}
有一个并发字典系统systemMap(string,Device),其中string是设备的名称,而device则是设备本身。
我已经将它处理到了这个地步,如果我替换
return ((Location)x).systemMap.Values;
使用
return ((Location)x).systemMap["System 1"].deviceMap.Values;
我会为特定系统获取正确的ListView,但显然我希望将其应用于系统图中的所有系统,而不仅限于系统1。
return ((Location)x).systemMap.Values;
仅显示位置,然后是位置下的系统,但不显示系统下的设备。
谢谢。