• C# Linq 查询数据库(DataSet)生成 Tree


    效果图如下

    cs代码

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace TreeView
    {
        public partial class FrmTreeView : Form
        {
            bool isShow = false;
            public FrmTreeView()
            {
                InitializeComponent();
                tvTree.Nodes.Add("湖南省");
            }
    
            private void tsmShowAdd_Click(object sender, EventArgs e)
            {
                if (!isShow)
                {
                    DataSet ds = DatabaseHelper.GetDataSet();
                    AddTreeNode(ds, "cf0dbde5-14d6-44be-9f71-4e5d302afc99", tvTree.TopNode);
                    isShow = true;
                }
               
            }
    
    
            private void AddTreeNode(DataSet ds,string fatherKey,TreeNode Nodes)
            {
                var results = from result in ds.Tables[0].AsEnumerable() 
                              where result.Field<string>("SYS_FATHERKEY") == fatherKey 
                              select result;
    
                foreach (var item in results)
                {
                    TreeNode node = new TreeNode();
                    node.Text = item.Field<string>("SYS_NAME");
                    
                    if (Nodes == null)
                    {
                        tvTree.Nodes.Add(Nodes);
                    }
                    else
                    {
                        Nodes.Nodes.Add(node);
                    }
                    AddTreeNode(ds, item.Field<string>("SYS_KEY"),node);
                }
            }
    
        }
    }
    View Code

     数据库表的结构如下

  • 相关阅读:
    浏览器渲染流程
    MVC模式
    传统的DOM是如何进行渲染的
    报文的概念及理解
    单页面开发与多页面开发的优缺点
    第4次作业
    售票系统
    第三次作业
    第二次作业
    第一次作业
  • 原文地址:https://www.cnblogs.com/ZJ199012/p/4062488.html
Copyright © 2020-2023  润新知