yantian yue
2023-12-29 4dff0422d36233abbdac5ebf628365b724a906b5
提交 | 用户 | 时间
e46d3b 1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Windows.Forms;
6 using WeifenLuo.WinFormsUI.Docking;
7 using YX.BLL;
8 using YX.Entity;
9
10 namespace YX
11 {
12     public partial class WindowParent : DockContent
13     {
14         SystemMenu_Bll menu_bll = new SystemMenu_Bll();
15         public  WindowParent()
16         {
17             #region 关闭窗口
18             System.Windows.Forms.ContextMenuStrip cms = new System.Windows.Forms.ContextMenuStrip();
19             // 
20             // tsmiClose
21             // 
22             System.Windows.Forms.ToolStripMenuItem tsmiClose = new System.Windows.Forms.ToolStripMenuItem();
23             tsmiClose.Name = "cms";
24             tsmiClose.Size = new System.Drawing.Size(98, 22);
25             tsmiClose.Text = "关闭";
26             tsmiClose.Click += new System.EventHandler(this.tsmiClose_Click);
27             // 
28             // tsmiALLClose
29             // 
30             System.Windows.Forms.ToolStripMenuItem tsmiALLClose = new System.Windows.Forms.ToolStripMenuItem();
31             tsmiALLClose.Name = "cms";
32             tsmiALLClose.Size = new System.Drawing.Size(98, 22);
33             tsmiALLClose.Text = "全部关闭";
34             tsmiALLClose.Click += new System.EventHandler(this.tsmiALLClose_Click);
35             // 
36             // tsmiApartFromClose
37             // 
38             System.Windows.Forms.ToolStripMenuItem tsmiApartFromClose = new System.Windows.Forms.ToolStripMenuItem();
39             tsmiApartFromClose.Name = "cms";
40             tsmiApartFromClose.Size = new System.Drawing.Size(98, 22);
41             tsmiApartFromClose.Text = "除此之外全部关闭";
42             tsmiApartFromClose.Click += new System.EventHandler(this.tsmiApartFromClose_Click);
43             // 
44             // tsmiClose
45             // 
46             cms.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
47             tsmiClose,tsmiApartFromClose,tsmiALLClose
48                              });
49             cms.Name = "tsmiClose";
50             cms.Size = new System.Drawing.Size(99, 26);
51             this.TabPageContextMenuStrip = cms;
52
53             #endregion
54
55             
56         }
57         #region 按钮权限
58         protected void  SetButton(string ParentId,ToolStrip toolStrip1)
59         {
60             List<Base_SysMenu> list = menu_bll.GetButtonList(ParentId, FrmLogin.LoginUserID);
61             foreach (var control in toolStrip1.Items)
62             {
63                 if (control is ToolStripButton)
64                 {
65                     ToolStripButton t = (ToolStripButton)control;
66                     if (list != null)
67                     {
68                         var name = list.Where(o => o.Menu_Tag == t.Name.Trim()).FirstOrDefault();
69                         if (name != null)
70                         {
71                             if (t.Name == name.Menu_Tag)
72                             {
73                                 t.Enabled = true;
74                             }
75                             else
76                             {
77                                 t.Enabled = false;
78                             }
79                         }
80                         else
81                         {
82                             t.Enabled = false;
83                         }
84
85                     }
86                     else
87                     {
88                         t.Enabled = false;
89                     }
90
91                 }
92             }
93         }
94         #endregion
95
96         #region 关闭窗口事件
97         private void tsmiClose_Click(object sender, EventArgs e)
98         {
99             this.Close();
100         }
101         private void tsmiApartFromClose_Click(object sender, EventArgs e)
102         {
103             DockContentCollection contents = DockPanel.Contents;
104             int num = 0;
105             while (num < contents.Count)
106             {
107                 if (contents[num].DockHandler.DockState == DockState.Document && DockPanel.ActiveContent != contents[num])
108                 {
109                     contents[num].DockHandler.Hide();
110                 }
111                 else
112                 {
113                     num++;
114                 }
115             }
116         }
117         private void tsmiALLClose_Click(object sender, EventArgs e)
118         {
119             DockContentCollection contents = DockPanel.Contents;
120             int num = 0;
121             while (num < contents.Count)
122             {
123                 if (contents[num].DockHandler.DockState == DockState.Document)
124                 {
125                     contents[num].DockHandler.Hide();
126                 }
127                 else
128                 {
129                     num++;
130                 }
131             }
132         } 
133         #endregion
134
135     }
136 }