当前位置:网站首页>Use treeview tree menu bar (recursively call database to create menu automatically)
Use treeview tree menu bar (recursively call database to create menu automatically)
2020-11-09 12:12:00 【Irving the procedural ape】
When doing industrial control PC project , When the project is too big , There are a lot of subdivision processes , The number of pages that need to be managed will also increase a lot , You can use .NET Control TreeView Page switch management , And realize TreeView Between the mutual switch .Intouch and Wonderware You can import and use TreeView Control .
One 、 Use VS Development TreeView Control
Create a control project solution
Drag one TreeView Control , You can simply edit nodes
Tag It's data that needs to be passed out
Two 、 What happened
At the end of the project , The other party will put forward a lot of improvement needs , At this point, if there are too many TreeView Control , Every time we improve , For the upper computer system, it needs to import again , There's too much repetition , Too complicated .
Solution : Create menu table in database , The menu bar is automatically generated when the project is running
3、 ... and 、 Create database
Create database tables ,MenuId It's the menu number ,MenuName by TreeView The name of the page displayed ,MenuCode by Tag,ParentId This node is the root of the node
Four 、 Write code and generate it automatically
According to the two-tier architecture
Entity class TreeViewNode
1 public class TreeViewNode 2 { 3 public int MenuId { get; set; } 4 5 public string MenuName { get; set; } 6 7 public string MenuCode { get; set; } 8 9 public string ParentId { get; set; }10 }
Service layer :MenuService
1 /// <summary> 2 /// Get all the menu items 3 /// </summary> 4 /// <returns></returns> 5 public List<TreeViewNode> GetAllMenu() 6 { 7 string sql = "select MenuId,MenuName,MenuCode,ParentId from MenuList"; 8 List<TreeViewNode> nodeList = new List<TreeViewNode>(); 9 SqlDataReader objRead = SQLHelper.GetReader(sql);10 while (objRead.Read())11 {12 nodeList.Add(new TreeViewNode()13 {14 MenuId = Convert.ToInt32(objRead["MenuId"]),15 MenuName = objRead["MenuName"].ToString(),16 MenuCode = objRead["MenuCode"].ToString(),17 ParentId = objRead["ParentId"].ToString()18 });19 }20 objRead.Close();21 return nodeList;22 }
TreeViewMenu Control :
1 public partial class TreeViewMenu: UserControl 2 { 3 public TreeViewMenu() 4 { 5 InitializeComponent(); 6 Lo.........
版权声明
本文为[Irving the procedural ape]所创,转载请带上原文链接,感谢
边栏推荐
- 深圳C1考证历程
- Well, the four ways to query the maximum value of sliding window are good
- SQL statement to achieve the number of daffodils
- Interface tests how to pass files in post requests
- Solve the problem of idea shortcut key Alt + insert invalid
- Stack & queue (go) of data structure and algorithm series
- Android权限大全
- 注意.NET Core进行请求转发问题
- Android Development - service application, timer implementation (thread + service)
- 分库分表的 9种分布式主键ID 生成方案,挺全乎的
猜你喜欢
Looking for better dynamic getter and setter solutions
android studio AIDL的使用
inet_pton()和inet_ntop()函数详解
List of wechat video Number broadcasters October 2020
Jsliang job series - 08 - handwritten promise
Well, the four ways to query the maximum value of sliding window are good
Python零基础入门教程(01)
Learning notes of nodejs
零基础IM开发入门(四):什么是IM系统的消息时序一致性?
JVM learning (6) - memory model and thread
随机推荐
微信视频号播主排行榜2020年10月
块级元素和行内元素
Method of creating flat panel simulator by Android studio
Well, these four ways to query the maximum value of sliding window are good
List of wechat video Number broadcasters October 2020
Configure switch trunk interface traffic local priority forwarding (cluster / stack)
[design pattern] Chapter 4: Builder mode is not so difficult
JVM学习(五) -执行子系统
Reading design patterns adapter patterns
解决IDEA快捷键 Alt+Insert 失效的问题
Detailed explanation of [golang] GC
Nine kinds of distributed primary key ID generation schemes of sub database and sub table are quite comprehensive
安全(杂记)
微信圈子
服务应用 ClockService安卓实现闹钟
“开源软件供应链点亮计划 - 暑期 2020”公布结果 基于 ChubaoFS 开发的项目获得最佳质量奖
Depth analysis based on synchronized lock
Front end code style practice prettier + eslint + git hook + lint staged
开源ERP招聘了
Review of hot spots of last week (11.2-11.8)