예제 #1
0
        /// <summary>
        /// 事件说明:双击打开对应节点的工艺规程模板
        /// 作    者:jason.tang
        /// 完成时间:2013-01-21
        /// </summary>
        private void tvProcessPlanningModule_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            if (e.Node != null && e.Node.Tag != null)
            {
                if (e.Node.ImageKey != "planning")
                {
                    return;
                }

                WeifenLuo.WinFormsUI.Docking.DockContent content = MainFrm.mainFrm.CheckContentIsOpened(e.Node.Tag.ToString().Substring(0, e.Node.Tag.ToString().IndexOf("@")));
                if (content != null)
                {
                    MainFrm.mainFrm.OpenModule(content);
                    return;
                }

                List <ProcessCardModule> listProcessCardModule =
                    ProcessPlanningModuleBLL.GetProcesCardModuleList(int.Parse(e.Node.Tag.ToString().Substring(e.Node.Tag.ToString().IndexOf("@") + 1)));

                if (listProcessCardModule.Count > 0)
                {
                    ProcessPlanningModuleDetailFrm form = new ProcessPlanningModuleDetailFrm();
                    form.Name     = e.Node.Tag.ToString().Substring(0, e.Node.Tag.ToString().IndexOf("@"));
                    form.FormText = string.Format("{0}-{1}", e.Node.Text, e.Node.Tag.ToString().Substring(e.Node.Tag.ToString().IndexOf("@")));
                    form.ProcessPlanningModules = listProcessCardModule;
                    MainFrm.mainFrm.OpenPlanningModule(form);
                }
            }
        }
예제 #2
0
파일: MainForm.cs 프로젝트: monstrim/Ares
 private void ActivateWindow(WeifenLuo.WinFormsUI.Docking.DockContent window)
 {
     if (!window.IsHidden)
     {
         window.Activate();
         window.Focus();
     }
 }
예제 #3
0
        /// <summary>
        /// 删除指定的panel,执行关闭窗口相关的方法,回收该窗体包含的所有资源。
        /// 一般用于Terminate()方法中
        /// </summary>
        public void DeletePanel(string caption)
        {
            if (Program.frmMain.m_Menu.m_MenuTable.ContainsKey("mnu" + caption) && !Program.frmMain.m_Menu.Remove("mnu" + caption)) //如果移除失败,则尝试手动移除一次。
            {
                try
                {
                    System.Windows.Forms.ToolStripItem submenu = (System.Windows.Forms.ToolStripItem)Program.frmMain.m_Menu.m_MenuTable["mnu" + caption];
                    Program.frmMain.menuStrip1.Items.Remove(submenu);
                    if (Program.frmMain.m_Menu.m_MenuTable.ContainsKey("mnu" + caption)) //可能在Remove方法中移除了。
                    {
                        Program.frmMain.m_Menu.m_MenuTable.Remove("mnu" + caption);
                    }
                }
                catch (System.Exception ex)
                {
                    MapWinGIS.Utility.Logger.Dbg("移除可浮动窗体显示菜单失败!菜单名: mnu" + caption + "描述:" + ex.ToString());
                }
            }

            if (m_OnCloseHandlers[caption] != null)
            {
                ArrayList arrylist = m_OnCloseHandlers[caption];
                while (arrylist.Count > 0)
                {
                    //触发绑定该委托的方法。一个窗体可以能绑定了多个OnPanelClose类型的方法,所以一一执行后删除。
                    ((Interfaces.OnPanelClose)(arrylist[0])).Invoke(caption);
                    arrylist.RemoveAt(0);
                }
            }

            if (m_OnCloseHandlers.ContainsKey(caption)) //移除存储该窗体的关闭事件关联的委托
            {
                m_OnCloseHandlers.Remove(caption);
            }

            MWDockPanel floatPanel = m_Panels[caption];

            floatPanel.FormClosing -= new FormClosingEventHandler(MarkClosed);

            if (m_Panels.ContainsKey(caption)) //注销窗体
            {
                if (m_Panels[caption] == null)
                {
                    m_Panels.Remove(caption);
                    return;
                }
                WeifenLuo.WinFormsUI.Docking.DockContent child = m_Panels[caption];
                while (child.Controls.Count > 0)
                {
                    child.Controls.RemoveAt(0);
                }

                m_Panels.Remove(caption);
                child.Close(); //该窗体关闭时会注销掉所有拥有的资源,并被回收。
            }
        }
예제 #4
0
 private static void FormShowHide(ToolStripMenuItem toolstrip, WeifenLuo.WinFormsUI.Docking.DockContent form)
 {
     if (toolstrip.Checked)
     {
         form.Hide();
     }
     else
     {
         form.Show();
     }
 }
예제 #5
0
 public void OpenOrCreateTableForm(string tableName, WeifenLuo.WinFormsUI.Docking.DockContent dockForm)
 {
     if (!_openTableForms.ContainsKey(tableName) && dockForm != null)
     {
         dockForm.FormClosed += (s, e) =>
         {
             _openTableForms.Remove(tableName);
         };
         _openTableForms[tableName] = dockForm;
     }
     _openTableForms[tableName].Show(dockPanel1, WeifenLuo.WinFormsUI.Docking.DockState.Document);
 }
예제 #6
0
        private void ShowForm(WeifenLuo.WinFormsUI.Docking.DockContent form)
        {
            var dockform = DockPanel1.Contents.Where(c => (c as Form).Text == form.Text).FirstOrDefault();

            if (dockform == null)
            {
                form.Show(this.DockPanel1);
                form.Activate();
            }
            else
            {
                (dockform as Form).Activate();
            }
        }
예제 #7
0
        /// <summary>
        /// 确定(选择项)
        /// </summary>
        private void btnConfirm_Click(object sender, EventArgs e)
        {
            //FormCollection collection = Application.OpenForms;
            //foreach (Form form in collection)
            //{
            //    if (form.Name == "MaterialChooseNavigate")
            //    {
            //        form.Close();
            //        break;
            //    }
            //}

            //this.Close();
            List <string> listCategoryTypeId = SelectMaterial(CategoryId);

            if (listCategoryTypeId == null)
            {
                return;
            }

            if (!string.IsNullOrEmpty(CategoryId))
            {
                //CategoryId = string.Join(",",listCategoryTypeId.ToArray());
                FormCollection collection = Application.OpenForms;
                foreach (Form form in collection)
                {
                    if (form.Name == "ProductListFrm")
                    {
                        ((ProductListFrm)form).AddPbom(listCategoryTypeId[0], listCategoryTypeId[1] + listCategoryTypeId[2]);
                        form.Select();
                    }
                }
            }
            else
            {
                WeifenLuo.WinFormsUI.Docking.DockContent content = MainFrm.mainFrm.CheckFormIsOpened(typeof(MaterialStructureNavigate).Name);

                if (content != null)
                {
                    MainFrm.mainFrm.CloseModule(content);
                }
                MaterialStructureNavigate frm = new MaterialStructureNavigate();
                frm.CategoryTypeIds = listCategoryTypeId;
                MainFrm.mainFrm.OpenNavigate(frm, WeifenLuo.WinFormsUI.Docking.DockState.DockLeft);
            }
        }
예제 #8
0
        /// <summary>
        /// 如果一个panel没有必要删除,可以设置它的可见性来显示与隐藏该窗体
        /// </summary>
        public void SetPanelVisible(string caption, bool visible)
        {
            if (m_Panels[caption] != null)
            {
                WeifenLuo.WinFormsUI.Docking.DockContent child = m_Panels[caption];

                if (Program.frmMain.m_Menu["mnu" + caption].Checked)
                {
                    child.Hide();
                    Program.frmMain.m_Menu["mnu" + caption].Checked = false;
                }
                else
                {
                    child.Show();
                    Program.frmMain.m_Menu["mnu" + caption].Checked = true;
                }
            }
        }
예제 #9
0
        void Ouvrir_Action(int ID)
        {
            PATIO.Classes.Action action = (PATIO.Classes.Action)Acces.Trouver_Element(Acces.type_ACTION.id, ID);

            var D = new WeifenLuo.WinFormsUI.Docking.DockContent();

            D.TabText = "Action " + action.Code;

            ctrlFicheAction ctrl = new ctrlFicheAction();

            ctrl.Acces  = Acces;
            ctrl.action = action;
            ctrl.Initialiser();

            ctrl.Dock = DockStyle.Fill;
            D.Controls.Add(ctrl);

            D.Show(DP, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
예제 #10
0
        void Ouvrir_Objectif(int ID)
        {
            Objectif objectif = (Objectif)Acces.Trouver_Element(Acces.type_OBJECTIF.id, ID);

            var D = new WeifenLuo.WinFormsUI.Docking.DockContent();

            D.TabText = "Objectif " + objectif.Code;

            var ctrl = new ctrlFicheObjectif();

            ctrl.Acces    = Acces;
            ctrl.objectif = objectif;
            ctrl.Initialiser();

            ctrl.Dock = DockStyle.Fill;
            D.Controls.Add(ctrl);

            D.Show(DP, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
예제 #11
0
        /// <summary>
        /// Procédure d'ouverture d'un élément favori
        /// </summary>
        /// <param name="ID"></param>
        void Ouvrir_Favori(int ID)
        {
            PATIO.CAPA.Classes.Action action = (PATIO.CAPA.Classes.Action)Acces.Trouver_Element(Acces.type_ACTION, ID);

            var D = new WeifenLuo.WinFormsUI.Docking.DockContent();

            D.TabText = "Action " + action.Code;
            D.Tag     = "ACTION_GESTION";

            ctrlGestionAction ctrl = new ctrlGestionAction();

            ctrl.Acces   = Acces;
            ctrl.action  = action;
            ctrl.Console = Console;
            ctrl.Initialiser();

            ctrl.Dock = DockStyle.Fill;
            D.Controls.Add(ctrl);

            D.Show(DP, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
예제 #12
0
파일: MainForm.cs 프로젝트: monstrim/Ares
 private void UpdateWindowState(WeifenLuo.WinFormsUI.Docking.DockContent window)
 {
     if (window.VisibleState == WeifenLuo.WinFormsUI.Docking.DockState.DockBottomAutoHide)
     {
         window.VisibleState = WeifenLuo.WinFormsUI.Docking.DockState.DockBottom;
     }
     else if (window.VisibleState == WeifenLuo.WinFormsUI.Docking.DockState.DockLeftAutoHide)
     {
         window.VisibleState = WeifenLuo.WinFormsUI.Docking.DockState.DockLeft;
     }
     else if (window.VisibleState == WeifenLuo.WinFormsUI.Docking.DockState.DockRightAutoHide)
     {
         window.VisibleState = WeifenLuo.WinFormsUI.Docking.DockState.DockRight;
     }
     else if (window.VisibleState == WeifenLuo.WinFormsUI.Docking.DockState.DockTopAutoHide)
     {
         window.VisibleState = WeifenLuo.WinFormsUI.Docking.DockState.DockTop;
     }
     else
     {
         window.IsHidden = !window.IsHidden;
     }
 }
예제 #13
0
        void Ouvrir_Plan(int ID)
        {
            Plan plan = (Plan)Acces.Trouver_Element(Acces.type_PLAN.id, ID);

            var D = new WeifenLuo.WinFormsUI.Docking.DockContent();

            D.TabText = "Plan " + plan.Code;
            //MessageBox.Show(int.Parse(lstPlan.SelectedNode.Name).ToString());

            var ctrl = new ctrlPlan();

            ctrl.Acces   = Acces;
            ctrl.plan    = plan;
            ctrl.DP      = DP;
            ctrl.Console = Console;
            ctrl.Chemin  = Chemin;
            ctrl.Afficher();

            ctrl.Dock = DockStyle.Fill;
            D.Controls.Add(ctrl);

            D.Show(DP, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
예제 #14
0
        private void OuvrirGroupe()
        {
            if (lstGroupe.SelectedNode is null)
            {
                return;
            }

            Groupe groupe = (Groupe)Acces.Trouver_Element(Acces.type_GROUPE, int.Parse(lstGroupe.SelectedNode.Name));
            var    D      = new WeifenLuo.WinFormsUI.Docking.DockContent();

            D.TabText = "Groupe " + groupe.Code;

            var ctrl = new ctrlGroupe();

            ctrl.Acces  = Acces;
            ctrl.groupe = groupe;
            ctrl.DP     = DP;
            ctrl.Affiche();

            ctrl.Dock = DockStyle.Fill;
            D.Controls.Add(ctrl);

            D.Show(DP, WeifenLuo.WinFormsUI.Docking.DockState.Document);
        }
예제 #15
0
 private void FrmDbServer_ViewTableEvent(WeifenLuo.WinFormsUI.Docking.DockContent DockContent)
 {
     WinFrmLifecycleEvent.OnViewTableFrmEvent(DockContent);
 }
예제 #16
0
 public static void OnViewCodeFrmEvent(WeifenLuo.WinFormsUI.Docking.DockContent content)
 {
     ViewCodeFrmEvent(content);
 }
예제 #17
0
 public PlugArg(WeifenLuo.WinFormsUI.Docking.DockContent dock)
 {
     dockcontent = dock;
 }
예제 #18
0
 public static void ShowWin(WeifenLuo.WinFormsUI.Docking.DockContent dockWin,
                            WeifenLuo.WinFormsUI.Docking.DockState state)
 {
     dockWin.Show(mainFormInstance.masterDockPanel, state);
 }
예제 #19
0
		void ReferenceToolStripMenuItem_Click(object sender, EventArgs e)
		{
			WeifenLuo.WinFormsUI.Docking.DockContent dc = new WeifenLuo.WinFormsUI.Docking.DockContent();
			WebBrowser wb = new WebBrowser();
			wb.Navigate(Application.StartupPath + "\\reference.html");
			wb.Dock = DockStyle.Fill;
			dc.Controls.Add(wb);
			dc.ShowHint = WeifenLuo.WinFormsUI.Docking.DockState.Document;
			dc.TabText = "L# Help - Reference";
			AddForm(dc);
		}
예제 #20
0
 void FrmProject_BrowserFileCodeFrmEvent(WeifenLuo.WinFormsUI.Docking.DockContent content)
 {
     WinFrmLifecycleEvent.OnViewCodeFrmEvent(content);
 }