一、WinForm中TreeView数据绑定

本文涉及的产品
可视分析地图(DataV-Atlas),3 个项目,100M 存储空间
数据可视化DataV,5个大屏 1个月
简介: 原问题贴地址:http://topic.csdn.net/u/20110621/17/7bad3c94-2761-4d39-84fa-db95b8e66977.

原问题贴地址:http://topic.csdn.net/u/20110621/17/7bad3c94-2761-4d39-84fa-db95b8e66977.html

 

部门表
bumenId 部门
1 产品研发部
2 工程项目部
3 行政部
4 市场部
用户表
userId 用户 bumenId
1 张三 1
2 李四 1
3 王五 2
4 余六 2
5 田七 3
6 朱八 3
7 叶九 4
8 姚个 4

 

 

输出结果如下:


二、另一种方式,数据表结果如下图:


    //实现多级目录 
    public string rootFT_Id = "00";//根节点Tag 
    // 添加根节点 
    private void AddRootCompany()
    {
        DataSet ds = new DataSet();
        using (SqlConnection con = new SqlConnection("Data Source=localhost;uid=sa;pwd=;Database=TW_KJ"))
        {
            con.Open();
            string strSQL = "select * from TB_Personnel_Type where FT_ID =" + rootFT_Id;
            using (SqlDataAdapter adapter = new SqlDataAdapter(strSQL, con))
            {
                adapter.Fill(ds);
            }
            TreeNode NewNode = new TreeNode();
            NewNode.Text = ds.Tables[0].Rows[0]["FT_NAME"].ToString().Trim();
            this.treeView1.Nodes.Add(NewNode);
            InitTreeCompanyChildNode(NewNode, rootFT_Id);
        }
    }

    public DataSet getMenuByLevel(string strFT_ID)
    {
        DataSet ds = new DataSet();
        using (SqlConnection con = new SqlConnection("Data Source=localhost;uid=sa;pwd=;Database=TW_KJ"))
        {
            con.Open();
            string strSQL;
            if (strFT_ID == "00")
            {
                strSQL = "select * from TB_Personnel_Type where FT_ID like'" + "0_' and FT_UP_NO = 1";
            }
            else
            {
                strSQL = "select * from TB_Personnel_Type where FT_ID like'" + strFT_ID.Trim() + "__'";
            }
            using (SqlDataAdapter adapter = new SqlDataAdapter(strSQL, con))
            {
                adapter.Fill(ds);
            }
        }
        return ds;
    }
    //递归获取子节点 
    private void InitTreeCompanyChildNode(TreeNode pNode, string fatherFT_ID)
    {
        DataSet ds = getMenuByLevel(fatherFT_ID);
        DataView dataView = new DataView();
        dataView = ds.Tables[0].DefaultView;
        foreach (DataRowView drv in dataView)
        {
            string newFT_ID = drv["FT_ID"].ToString();
            string name = drv["FT_NAME"].ToString();
            TreeNode NewNode = new TreeNode();
            //将子节点添加到父节点下面 
            NewNode.Text = name;
            pNode.Nodes.Add(NewNode);
            InitTreeCompanyChildNode(NewNode, newFT_ID);
        }
    }
    private void Property_Load(object sender, EventArgs e)
    {
        AddRootCompany();
    }


 

相关实践学习
DataV Board用户界面概览
本实验带领用户熟悉DataV Board这款可视化产品的用户界面
阿里云实时数仓实战 - 项目介绍及架构设计
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
相关文章
|
4月前
|
C#
通过Demo学WPF—数据绑定(一)
通过Demo学WPF—数据绑定(一)
39 1
|
4月前
|
存储 开发框架 .NET
通过Demo学WPF—数据绑定(二)
通过Demo学WPF—数据绑定(二)
41 1
|
4月前
|
C#
WPF/C#:数据绑定到方法
WPF/C#:数据绑定到方法
43 0
|
数据可视化 C#
WPF技术之TreeView控件
WPF TreeView控件是一个用于显示分层数据的控件,类似于文件浏览器中的目录结构。
177 0
WinForm——TreeView总结
WinForm——TreeView总结
454 0
|
C#
Seaching TreeVIew WPF
原文:Seaching TreeVIew WPF 项目中有一个树形结构的资源,需要支持搜索功能,搜索出来的结果还是需要按照树形结构展示,下面是简单实现的demo。 1.首先创建TreeViewItem的ViewModel,一般情况下,树形结构都包含DisplayName,Deepth,Parent...
836 0
|
前端开发
MVVM里绑定TreeView控件的SelectedItem
原文:MVVM里绑定TreeView控件的SelectedItem 来源:http://stackoverflow.com/questions/9143107/get-selected-treeviewitem-using-mv...
1054 0
|
C# 数据安全/隐私保护 索引
WPF入门:数据绑定
原文:WPF入门:数据绑定 上一篇我们将XAML大概做了个了解 ,这篇将继续学习WPF数据绑定的相关内容 数据源与控件的Binding Binding作为数据传送UI的通道,通过INotityPropertyChanged接口的PropertyChanged事件通知Binding数据属性...
1132 0