• 大小: 696KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-11
  • 语言: C#
  • 标签: winform  

资源简介

Winform通用框架之权限管理系统---------菜单,开发界面。 在csdn一篇博客中看到文章Winform通用框架之权限管理系统,但是只有文章没有源码就是耍流氓。于是自己写了出来,可用于所有管理系统的开发框架。 软件的整体主页布局是用到了WeifenLuo.WinFormsUI.Docking;的可拖拉式布局,和我们常用的VS 工具效果一样。这样的好处是菜单页和内容页的窗口在编码的时候可以分离,互不影响。菜单是抽屉式布局,打开的窗口是动态创建的。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;

namespace BookMake
{
    public partial class Form1 : DockContent
    {
        public Mainform _frmMain; //主窗体
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender EventArgs e)
        {
            Init(); 
        }

        List
 m_Parent = null;

        //初始化按钮
        private void Init()
        {
            this.panel1.Controls.Clear();
            this.panel1.Controls.Add(this.listView1);
            this.listView1.Clear();
            m_Parent =GetSysMenusParent(); //查询菜单的父节点,先生成父菜单按钮
            int i = m_Parent.Count;
            foreach (var item in m_Parent)
            {
                Button b = new Button();
                b.Text = item.Menu_Name;
                b.Dock = Dockstyle.Top;//控件布局
                b.Size = new System.Drawing.Size(244 30);// 设置高度, 宽度随父控件
                b.Tag = item.Menu_Id;
                b.TabIndex = i;//控件顺序
                b.Click += new System.EventHandler(this.Buttonclick);
                this.panel1.Controls.Add(b);
                i--;
                
            }
        }

        /// 
        /// 点击按钮后,改变布局,并初始化菜单
        /// 

        /// 
        /// 
       void Buttonclick(object sender EventArgs e)
        { 
            // 1.比较按钮,设置按钮布局顺序
            Button clickedButton = (Button)sender;
            int clickedButtonTabIndex = clickedButton.TabIndex;
            foreach (Control ctl in this.panel1.Controls) 
            {
                if (ctl is Button)
                {
                    Button btn = (Button)ctl;
                    if (btn.TabIndex > clickedButtonTabIndex)
                    {
                        if (btn.Dock != Dockstyle.Bottom)
                        {
                            btn.Dock = Dockstyle.Bottom;
                           btn.BringToFront();
                        }
                    }
                    else
                    {
                        if (btn.Dock != Dockstyle.Top)
                        {
                            btn.Dock = Dockstyle.Top;
                           btn.BringToFront();
                        }
                    }
                }

            }
           
            foreach (var item in m_Parent)
            {
                if (clickedButton.Tag.ToString() == item.Menu_Id)
                {
                    this.listView1.Clear();
                    Listse_SysMenu> Childs = GetSysMenuChilds(clickedButton.Tag.ToString());//获取子菜单
                    listView1.LargeIma

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     73216  2019-05-17 17:00  BookMake - 副本\.vs\BookMake\v15\.suo

     文件          0  2019-05-05 13:51  BookMake - 副本\.vs\BookMake\v15\Server\sqlite3\db.lock

     文件     647168  2019-05-17 16:13  BookMake - 副本\.vs\BookMake\v15\Server\sqlite3\storage.ide

     文件      32768  2019-05-17 15:23  BookMake - 副本\.vs\BookMake\v15\Server\sqlite3\storage.ide-shm

     文件    4124152  2019-05-17 16:56  BookMake - 副本\.vs\BookMake\v15\Server\sqlite3\storage.ide-wal

     文件        189  2019-05-05 13:51  BookMake - 副本\BookMake\App.config

     文件      71680  2019-05-17 16:56  BookMake - 副本\BookMake\bin\Debug\BookMake.exe

     文件        189  2019-05-05 13:51  BookMake - 副本\BookMake\bin\Debug\BookMake.exe.config

     文件      54784  2019-05-17 16:56  BookMake - 副本\BookMake\bin\Debug\BookMake.pdb

     文件     316392  2018-10-24 01:52  BookMake - 副本\BookMake\bin\Debug\WeifenLuo.WinFormsUI.Docking.dll

     文件       4911  2019-05-17 16:27  BookMake - 副本\BookMake\BookMake.csproj

     文件       7649  2019-05-17 16:56  BookMake - 副本\BookMake\Form1.cs

     文件       4557  2019-05-17 15:44  BookMake - 副本\BookMake\Form1.Designer.cs

     文件      16447  2019-05-17 15:44  BookMake - 副本\BookMake\Form1.resx

     文件        822  2019-05-17 16:06  BookMake - 副本\BookMake\Mainform.cs

     文件       6528  2019-05-17 16:05  BookMake - 副本\BookMake\Mainform.Designer.cs

     文件      23466  2019-05-17 15:36  BookMake - 副本\BookMake\Mainform.resx

     文件        567  2019-05-17 16:12  BookMake - 副本\BookMake\MenuManage.cs

     文件       5113  2019-05-17 15:50  BookMake - 副本\BookMake\MenuManage.Designer.cs

     文件       6185  2019-05-17 15:50  BookMake - 副本\BookMake\MenuManage.resx

     文件          0  2019-05-17 16:56  BookMake - 副本\BookMake\obj\Debug\BookMake.csproj.CopyComplete

     文件         42  2019-05-17 16:25  BookMake - 副本\BookMake\obj\Debug\BookMake.csproj.CoreCompileInputs.cache

     文件       1274  2019-05-17 16:27  BookMake - 副本\BookMake\obj\Debug\BookMake.csproj.FileListAbsolute.txt

     文件       1347  2019-05-17 16:32  BookMake - 副本\BookMake\obj\Debug\BookMake.csproj.GenerateResource.cache

     文件      48485  2019-05-05 14:42  BookMake - 副本\BookMake\obj\Debug\BookMake.csprojAssemblyReference.cache

     文件      71680  2019-05-17 16:56  BookMake - 副本\BookMake\obj\Debug\BookMake.exe

     文件       7241  2019-05-17 16:27  BookMake - 副本\BookMake\obj\Debug\BookMake.Form1.resources

     文件      11918  2019-05-17 16:27  BookMake - 副本\BookMake\obj\Debug\BookMake.Mainform.resources

     文件        180  2019-05-17 16:27  BookMake - 副本\BookMake\obj\Debug\BookMake.MenuManage.resources

     文件      54784  2019-05-17 16:56  BookMake - 副本\BookMake\obj\Debug\BookMake.pdb

............此处省略73个文件信息

评论

共有 条评论