C# 使用dataset c填充树视图节点#
朋友 我有这个代码来填充表2中的父节点和子节点 第一个父表是Category 儿童桌很贵C# 使用dataset c填充树视图节点#,c#,C#,朋友 我有这个代码来填充表2中的父节点和子节点 第一个父表是Category 儿童桌很贵 OleDbConnection cn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Properties.Settings.Default.dPath + ";Jet OLEDB:Database Password=azouz(2016)"); OleDbDataAdapter da = new OleDbDa
OleDbConnection cn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Properties.Settings.Default.dPath + ";Jet OLEDB:Database Password=azouz(2016)");
OleDbDataAdapter da = new OleDbDataAdapter("Select * from Category", cn);
OleDbDataAdapter daSub = new OleDbDataAdapter("Select * from Expensive", cn);
DataSet ds = new DataSet();
da.Fill(ds, "Category");
daSub.Fill(ds, "Expensive");
ds.Relations.Add("Cat_Expensive", ds.Tables["Category"].Columns["Catid"], ds.Tables["Expensive"].Columns["Catid"]);
foreach (DataRow dr in ds.Tables["Category"].Rows)
{
TreeNode tn = new TreeNode(dr["Category"].ToString());
foreach (DataRow drChild in dr.GetChildRows("Expensive"))
{
tn.Nodes.Add(drChild["ExpensiveName"].ToString());
treeView1.Nodes.Add(tn);
}
treeView1.Nodes.Add(tn);
}
水资源类别(父节点)=表类别
water month 1 (child node) == table Expensive
water for month 2
煤气门
gas for month 1
gas for mont2
我的问题是:
我的问题是,此代码仅使用表类别中的父节点填充树视图
并且不从表中填充子节点
OleDbConnection cn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Properties.Settings.Default.dPath + ";Jet OLEDB:Database Password=azouz(2016)");
OleDbDataAdapter da = new OleDbDataAdapter("Select * from Category", cn);
OleDbDataAdapter daSub = new OleDbDataAdapter("Select * from Expensive", cn);
DataSet ds = new DataSet();
da.Fill(ds, "Category");
daSub.Fill(ds, "Expensive");
ds.Relations.Add("Cat_Expensive", ds.Tables["Category"].Columns["Catid"], ds.Tables["Expensive"].Columns["Catid"]);
foreach (DataRow dr in ds.Tables["Category"].Rows)
{
TreeNode tn = new TreeNode(dr["Category"].ToString());
foreach (DataRow drChild in dr.GetChildRows("Expensive"))
{
tn.Nodes.Add(drChild["ExpensiveName"].ToString());
treeView1.Nodes.Add(tn);
}
treeView1.Nodes.Add(tn);
}
您不是一个为“昂贵”创建新树节点的用户 在第二个foreach中为子节点迭代创建另一个树节点,并将子节点添加到父节点“tn” 如下所示(基于您的代码,未经测试) 一个非常古老但概念上非常简单的示例: