我的表 company 有总部门和分部门两个字段 分部门 总部门 审计一部 审计部
审计二部 审计部
财务一部 财务部
财务二部 财务部显示效果为:审计部
--审计一部
--审计二部
财务部
--财务一部
--财务二部WinForm中的,不是web的,C#的,给段详细的代码,谢谢
审计二部 审计部
财务一部 财务部
财务二部 财务部显示效果为:审计部
--审计一部
--审计二部
财务部
--财务一部
--财务二部WinForm中的,不是web的,C#的,给段详细的代码,谢谢
{ //绑定节点
SqlDataReader dr = zhBB.dr_schoolInfo("tab_school"); //查询学校信息表
if (dr.Read())
{
this.treeView1.Nodes.Add(dr ["schoolName"].ToString ()); //添加根节点
dr.Close();
DataSet ds = zhBB.selectDS();
for (int k = 0; k < ds.Tables["tabName"].Rows.Count; k++) //循环添加子节点,,年级
{
string strGrade=ds.Tables["tabName"].Rows[k]["studentGrade"].ToString();
TreeNode tnGrade=new TreeNode (strGrade);
DataSet dss = this.zhBB.ds_treeNodeClass(strGrade);
for (int i = 0; i < dss.Tables["tabName"].Rows.Count; i++) //循环添加子节点,按年级添加班级
{
string strClass = dss.Tables["tabName"].Rows[i]["studentClass"].ToString();
tnGrade .Nodes .Add (strClass); //在年级下面添加班级
}
this.treeView1.Nodes[0].Nodes.Add(tnGrade); //在树下面添加年级 //int类型的
}
}
dr.Dispose();
}
再在学校下面添加 年级-->再添加,班级 楼主可以看下,也可以留下QQ, QQ上好谈些。,
{
foreach (TreeNode td in nodes)
{
int l=td.Level;
string s="";
for(int i=0;i<l;i++)
s+="-"; this.richTextBox1.Text += s + td.Text + "\n";
if (td.Nodes.Count > 0)
sss(td.Nodes);
}
}
DataTable dtble = new DataTable();
//将表 company的数据取到 dtble;
private void button1_Click(object sender, EventArgs e)
{
TreeNode treeNode1 = new TreeNode("审计部");
treeView1.Nodes.Add(treeNode1); TreeNode treeNode2 = new TreeNode("财务部");
treeView1.Nodes.Add(treeNode1);
} private void CrateTreeView(TreeNode tmnode)
{
DataRow[] tmdr = dtble.Select("总部门='" + tmnode.Text.Trim()+"'"); foreach (DataRow dr in tmdr)
{
TreeNode childnode = new TreeNode(dr["分部门"].ToString().Trim());
tmnode.Nodes.Add(childnode); CrateTreeView(childnode);
}
}
[code=C#]
DataTable table1 = new DataTable();
DataTable table2 = new DataTable();
SqlConnection cn = new SqlConnection("連接字符串");
SqlDataAdapter da1 = new SqlDataAdapter("select distinct 總部門 from company", cn);
SqlDataAdapter da2 = new SqlDataAdapter("select 分部門,總部門 from company", cn);
da1.Fill(table1);
da2.Fill(table2);
da1.Dispose();
da2.Dispose();
cn.Dispose(); foreach (DataRow row in table1.Rows)
{
TreeNode node = treeView1.Nodes.Add(row["總部門"].ToString());
DataRow[] depts = table2.Select("總部門='" + row["總部門"].ToString() + "'");
foreach (DataRow dept in depts)
{
node.Nodes.Add(dept["分部門"].ToString());
}
}
table1.Dispose();
table2.Dispose();[/code]
4楼加一句执行. sss(this.treeView1.Nodes);
{
//根
TView.BeginUpdate();
TView.Nodes.Clear();
TreeNode rootNode= new TreeNode("公司名称");
TView.Nodes.Add (rootNode);
string oldDept="公司名称";
string curDept=""; TreeNode parentNode=rootNode;
TreeNode childNode; DataTable dt=GetDataTable("SELECT 总部门, 分部门 FROM TableName ORDER BY 总部门, 分部门");
for (int j=0;j<dt.Rows.Count;j++)
{
curDept=dt.Rows[j][0].ToString();
if (curDept!=oldDept)
{
parentNode=new TreeNode();
parentNode.Text =curDept;
rootNode.Nodes.Add(parentNode);
oldDept=curDept;
}
childNode=new TreeNode();
childNode.Text =dt.Rows[j][1].ToString();
parentNode.Nodes.Add (childNode);
}
TView.EndUpdate();
}
{
//根
TView.BeginUpdate();
TView.Nodes.Clear();
TreeNode rootNode= new TreeNode("公司名称");
TView.Nodes.Add (rootNode); string oldDept="公司名称";
string curDept=""; TreeNode parentNode=rootNode;
TreeNode childNode; DataTable dt=GetDataTable("SELECT 总部门, 分部门 FROM TableName ORDER BY 总部门, 分部门");
for (int j=0;j <dt.Rows.Count;j++)
{
curDept=dt.Rows[j][0].ToString();
if (curDept!=oldDept)
{
parentNode=new TreeNode();
parentNode.Text =curDept;
rootNode.Nodes.Add(parentNode);
oldDept=curDept;
} childNode=new TreeNode();
childNode.Text =dt.Rows[j][1].ToString();
parentNode.Nodes.Add (childNode);
}
TView.EndUpdate();
}