Browse Source

使用同一界面的两个模块在打开情况下能够于左侧导航栏点击正确切换

Hcsy 7 years ago
parent
commit
05d2b0b96b

+ 1 - 0
.gitignore

@@ -211,3 +211,4 @@ GeneratedArtifacts/
 _Pvt_Extensions/
 ModelManifest.xml
 *.rar
+/MES接口/MES接口.csproj

+ 7 - 2
UAS-MES/CustomControl/AccordionMenu/AccordionMenu.cs

@@ -145,6 +145,7 @@ namespace UAS_MES.CustomControl.AccordionMenu
                     lsvi.Tag = dt.Rows[i]["sn_classname"].ToString();
                     lsvi.Text = dt.Rows[i]["sn_displayname"].ToString();
                     lsvi.ToolTipText = dt.Rows[i]["sn_caller"].ToString();
+                    lsvi.Name = dt.Rows[i]["sn_id"].ToString();
                     lsv.Items.Add(lsvi);
                 }
                 else
@@ -282,11 +283,12 @@ namespace UAS_MES.CustomControl.AccordionMenu
             OpenForm.Text = item.Text;
             //用Tag保存Caller
             OpenForm.Tag = item.ToolTipText;
+
             TabControl tc = (TabControl)this.Parent.Parent.Controls["MainTabControl"];
             //如果窗体不存在进行打开,item.ToolTip是Caller
             if (!OpenedFormName.ContainsKey(item.ToolTipText))
             {
-                TabPage tb = new TabPage { Name = "UAS_MES." + item.Tag, Tag= item.ToolTipText, Text = OpenForm.Text };
+                TabPage tb = new TabPage { Name = item.Name, Tag = item.ToolTipText, Text = OpenForm.Text };
                 OpenForm.TopLevel = false;
                 tc.TabPages.Add(tb);
                 //直接选中新打开的界面
@@ -300,7 +302,10 @@ namespace UAS_MES.CustomControl.AccordionMenu
             }
             //如果窗体已存在展示该窗体
             else
-                tc.SelectedTab = (TabPage)this.Parent.Parent.Controls["MainTabControl"].Controls["UAS_MES." + item.Tag];
+                //  tc.SelectedTab = (TabPage)this.Parent.Parent.Controls["MainTabControl"].Controls["UAS_MES." + item.Tag];
+                 tc.SelectTab(item.Name);
+
+           
         }
     }
 }

+ 4 - 4
UAS-MES/FunctionCode/Employee/Employee_Group.cs

@@ -98,13 +98,13 @@ namespace UAS_MES.Employee
         {
             if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
             {
-                string CallerUser = "Employee!Data";
-                string CallerPower = "Employee!Power";
+                string CallerUser = "Employee!DataGroup";
+                string CallerPower = "Employee!PowerGroup";
                 if (UserGroupDGV.Columns[e.ColumnIndex].Name == "UserSetting" && !AccordionMenu.OpenedFormName.ContainsKey(CallerUser))
                 {
                     AccordionMenu.OpenedFormName.Add(CallerUser, 101);
                     TabControl tc = (TabControl)this.Parent.Parent;
-                    TabPage tb = new TabPage { Name = CallerUser, Text = "人员查看" };
+                    TabPage tb = new TabPage { Name = CallerUser, Tag = CallerUser, Text = "人员查看" };
                     tc.TabPages.Add(tb);
                     string ug_code = UserGroupDGV.Rows[e.RowIndex].Cells["ug_code"].Value.ToString();
                     string ug_name = UserGroupDGV.Rows[e.RowIndex].Cells["ug_name"].Value.ToString();
@@ -120,7 +120,7 @@ namespace UAS_MES.Employee
                     AccordionMenu.OpenedFormName.Add(CallerPower, 101);
                     TabControl tc = (TabControl)this.Parent.Parent;
                     //如果窗体不存在进行打开
-                    TabPage tb = new TabPage { Name = CallerPower, Text = "权限控制" };
+                    TabPage tb = new TabPage { Tag = CallerPower, Name = CallerPower, Text = "权限控制" };
                     tc.TabPages.Add(tb);
                     string ug_code = UserGroupDGV.Rows[e.RowIndex].Cells["ug_code"].Value.ToString();
                     string ug_name = UserGroupDGV.Rows[e.RowIndex].Cells["ug_name"].Value.ToString();

+ 1 - 1
UAS-MES/Main.cs

@@ -221,7 +221,7 @@ namespace UAS_MES
         {
             //移除已打开的Form中的Form
             TabPage tb = e.Control as TabPage;
-            AccordionMenu.OpenedFormName.Remove(tb.Name);
+            AccordionMenu.OpenedFormName.Remove(tb.Tag.ToString());
             (tb.Controls[0] as Form).Close();
             //掉用了串口的程序需要在这个步骤关闭串口
             try