【发布时间】:2023-03-12 14:26:01
【问题描述】:
我在 sql 中有一个表:表数据如下:
catid parentid catname
----- -------- -------------------
1 0 Operating Systems
2 1 Windows
3 1 Linux
4 5 Windows Server 2008
5 2 Windows Server
6 1 Unix
父 ID 保留其父 ID。例如; Windows Server 2008 首先出现并且属于 Windows Server(其父级有时会在后面出现)。
在C# 方面,我在数据集中获得了该表,但无法解决其余问题。
for (int i = 0; i < ds2.Tables[0].Rows.Count; i++)
{
TreeNode root = new TreeNode();
TreeNode child = new TreeNode();
if (ds.Tables[0].Rows[i]["parentid"] == 0)
{
root.Text = ds.Tables[0].Rows[i]["catname"];
trview.Nodes.Add(root);
}
else
{
child.Text = ds.Tables[0].Rows[i]["catname"];
root.ChildNodes.Add(child);
}
}
如何根据表格填写Treeview。我无法解决如何为其设计循环。如果 parentid 属于一个 catid,它将是它的节点。
感谢您的任何建议或帮助
亲切的问候
【问题讨论】:
-
你有“两个”什么?您指的是“树”吗?
-
试过编译你的代码吗?它不会在第一行。
Treeview = new treeview();。 Treeview 实例没有变量名,C#区分大小写;所以你不能实例化一个 Treeview 键入 treeview -
对不起,我修正了错误的代码。
-
@josefh75 是 ds2 和 ds
DataSet的不同实例?