private void show_info()
{
List<ChannelTreeItem> result = new List<ChannelTreeItem>();
try
{
result = QueryUtils.GetChannelTree(TopQuery.GetChannelList().Values,TopQuery.GetClientList().Values);
treeview1.nodes.add(result);
}
catch
{
MessageBox.Show("Retry later");
}
}
ErrorMsg:无法将ChannelTreeItem转换为字符串
我可以将此列表添加到树视图节点吗?
答案 0 :(得分:0)
如果您查看Nodes.Add(对于TreeView)的方法的定义,您将看到只能添加TreeNode或string类型的对象:
所以你需要进行转换。使用ToString(),或创建TreeNode对象并将其添加到树视图
从你的代码:
List<ChannelTreeItem> result = new List<ChannelTreeItem>();
您的结果变量是ChannelTreeItems的类型列表。我不清楚你想要放在树节点中的是什么。您是否希望每个节点都包含ChannelTreeItems列表,或者您是否希望每个节点有一个ChannelTreeItem?
要执行后者,您需要遍历列表(for或foreach循环),然后将每个项目字符串添加到新节点,然后可以将其添加到树视图中。
https://msdn.microsoft.com/en-us/library/system.windows.forms.treenodecollection.add(v=vs.110).aspx