• C# sqlite开发桌面工具 树形布局宝典开发助手贴身代码专家


    C#开发宝典:开发的好助手,代码随处可以查询,日常数据库维护技巧、开发技巧、项目实战;

    适合有一定基础的人员查看和使用,迅速提升1-2年开发经验和运维经验。

     

    • 致开发者的话
    • 初级教程
    • 中级教程
    • 高级教程
    • 数据库教程
    • 大数据开发教程
    • 项目开发实战
    • 运维工程师教程
    我们经常遇到这样的问题,总是要搜索代码模块,很多没用过,又不系统,然后每个代码模块自己又要写代码研究很久才能集成到项目中;自己会一部分开发,然后对运维可能又不是很了解?
    
    这里笔者把自己遇到的包括开发、运维、项目实战的一些案例作为分享,采用拿来即用的理念,让开发更为便捷,常用算法、常用帮助类,常用组件,每个例子实例化展示,可以独立运行,便于开发者调试;
    

    窗体加载事件:
       private void MainWindow_Load(object sender, EventArgs e)
            {
                //Test();
                this.Text =  GlobalWebFunction._appVerSion;
                RefreshTreeView();
    
    
                try
                {
                    CheckSummary();//检查更新
    
                }
                catch (Exception ex)
                {
    
                    MessageDxUtil.ShowTips(ex.Message);
                }
            }
    
    
    


    采用树形的设计
    代码如下:使用递归

     1  List<ad_dictionary> _othersList = new List<ad_dictionary>();//所有的节点
          
          //加载树形 2 private void RefreshTreeView() 3 { 4 treeView1.Nodes.Clear(); 5 treeView1.BeginUpdate(); 6 Cursor.Current = Cursors.WaitCursor; 7 8 var allList = DAL.DicManageLogic.GetChapterList(); 9 10 List<ad_dictionary> firstGroup = allList.Where(p => p.Parentid == "0").ToList(); 11 //除了根目录的子节点 12 _othersList = allList.Where(p => p.Parentid != "0").ToList(); 13 foreach (var groupInfo in firstGroup) 14 { 15 //不显示删除的机构 16 if (groupInfo != null && groupInfo.IsDeleted == "1") 17 { 18 TreeNode topnode = new TreeNode(); 19 topnode.Text = groupInfo.Name; 20 topnode.Name = groupInfo.Id.ToString(); 21 topnode.Tag = groupInfo.Id; 22 topnode.ImageIndex = 0; 23 topnode.SelectedImageIndex = 0; 24 this.treeView1.Nodes.Add(topnode); 25 26 //二级 27 var subItemList = _othersList.Where(p => p.Parentid == groupInfo.Id).ToList(); 28 //List<ad_dictionary> sublist = DicManage.GetTreeByID(secondList, groupInfo.Id); 29 AddOUNode(subItemList, topnode); 30 31 } 32 } 33 34 Cursor.Current = Cursors.Default; 35 treeView1.EndUpdate(); 36 this.treeView1.ExpandAll(); 37 }

            //递归加载
    38 private void AddOUNode(List<ad_dictionary> list, TreeNode parentNode) 39 { 40 foreach (var ouInfo in list) 41 { 42 TreeNode ouNode = new TreeNode(); 43 ouNode.Text = ouInfo.Name; 44 ouNode.Name = ouInfo.Id.ToString(); 45 ouNode.Tag = ouInfo.Id; 46 if (ouInfo.IsDeleted == "0") 47 { 48 ouNode.ForeColor = Color.Red; 49 continue;//跳过不显示 50 } 51 52 53 var subItemList = _othersList.Where(p => p.Parentid == ouInfo.Id).ToList(); 54 if (subItemList.Count == 0) 55 { 56 //没有子节点了,不使用图标 57 ouNode.ImageIndex = -999; 58 } 59 else 60 { 61 ouNode.ImageIndex = 0; 62 ouNode.ImageIndex = 0; 63 ouNode.SelectedImageIndex = 0; 64 } 65 66 parentNode.Nodes.Add(ouNode); 67 68 AddOUNode(subItemList, ouNode); 69 } 70 }
    主要包括以下模块内容,每月更新1-2次
    @初级教程:基础语法的部分核心讲解
    @高级教程:全文搜索、短信、日志系统、qq登录
    @中级教程:ORM框架讲解、文字转语音工具、二维码扫描工具源码解析;
    @数据库教程:sqserver\sqlite\mysql的常见运维、数据库备份、表备份、日常简单统计等、与C#的批量交互、
    导入导出数据、数据转换
    @大数据开发教程:solr7.2的项目讲解、solr .net的使用、solr j的使用、lucene的使用 
    @项目开发实战:五金网、驾校预约系统、小区停车收费系统等讲解
    @运维工程师教程:windows服务器的日常部署:win2003\2008\2012\2016等多个版本演示安装,
    iis搭建网站;
    sql2000\2008\2012等数据库安装;Linux(centos、ubuntu)、阿里云服务器的搭建、域名解析,备案操作



    数据库设计如下:
    CREATE TABLE dbo.ad_dictionary
    (
    Id BIGINT NOT NULL,
    TenantId BIGINT,
    Parentid BIGINT,
    Name NVARCHAR (100),
    Code NVARCHAR (100),
    Description NVARCHAR (max),
    Enabled INT,
    Sort INT,
    IsDeleted INT,
    CreatedTime DATETIME2 (0),
    PRIMARY KEY (Id)
    )
    GO

     




    以下是部分预览图

    软件运行界面参考

     使用sqlite开发,树形导航菜单。欢迎探讨运维、C#开发等领域技术。

    测试连接

    链接:https://pan.baidu.com/s/1uf6BerKYen-85t4C-hb3Lw
    提取码:mbys




  • 相关阅读:
    Android核心分析 ---- 电话系统之GSMCallTacker
    Android核心分析 ----- Android电话系统之RIL-Java
    Android核心分析 ------ 电话系统之rilD
    Android核心分析 ----- Android电话系统-概述篇
    AndroidRuntime 流程
    关于++和--运算符的理解
    使用eclips开发java时的闪退问题
    Android--控件的滑动事件
    Running Hero.
    软件工程第三次大作业分工说明
  • 原文地址:https://www.cnblogs.com/51diysoft/p/15890115.html
Copyright © 2020-2023  润新知