From eb3ec7dfafe071de899112c918851db18bde6109 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期二, 10 十二月 2024 13:36:23 +0800 Subject: [PATCH] 核心界面优化 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs | 196 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 139 insertions(+), 57 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs index 93e9243..3389cf2 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs @@ -1,4 +1,6 @@ -锘縰sing DevExpress.XtraBars.Docking; +锘縰sing DevExpress.Drawing; +using DevExpress.Utils.Svg; +using DevExpress.XtraBars.Docking; using DevExpress.XtraBars.Docking2010.Views; using Yw.Vmo; using Yw.WinFrmUI.Page; @@ -13,15 +15,17 @@ this.PageTitle.Caption = "姘村姏妯℃嫙"; this.PageTitle.HeaderSvgImage = this.svgImg32[0]; this.PageTitle.SvgImageSize = new Size(24, 24); - this.xhsProjectSimulationFunctionMgrCtrl1.ShowProjectSiteInfoEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent; - this.xhsProjectSimulationFunctionMgrCtrl1.ShowProjectSiteSimulationEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent; - this.xhsProjectSimulationFunctionMgrCtrl1.ShowProjectSiteWorkingEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent; - this.xhsProjectSimulationFunctionMgrCtrl1.ProjectSiteWorkingCheckedEvent += XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent; + this.simulationFunctionMgrCtrl1.ShowProjectSiteInfoEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent; + this.simulationFunctionMgrCtrl1.ShowProjectSiteSimulationEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent; + this.simulationFunctionMgrCtrl1.ShowProjectSiteWorkingEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent; + this.simulationFunctionMgrCtrl1.ProjectSiteWorkingUpdateEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent; + this.simulationFunctionMgrCtrl1.ProjectSiteWorkingRemoveEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent; + this.simulationFunctionMgrCtrl1.ProjectSiteWorkingCheckedEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent; + this.simulationFunctionMgrCtrl1.CreateProjectSiteSchemeEvent += SimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent; } private XhsProjectVmo _project = null;//椤圭洰 private object _locker = new object();//閿佸畾瀵硅薄 - /// <summary> /// 鍒濆鍖栨暟鎹簮 @@ -33,7 +37,7 @@ { return; } - await this.xhsProjectSimulationFunctionMgrCtrl1.SetBindingData(_project); + await this.simulationFunctionMgrCtrl1.SetBindingData(_project); } /// <summary> @@ -61,8 +65,13 @@ #region 鍔熻兘闈㈡澘 //鏄剧ず椤圭洰绔欐鍐典簨浠� - private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent - (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, DevExpress.Utils.Svg.SvgImage svgImage) + private void SimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + Yw.Model.HydroModelInfo hydroInfo, + SvgImage svgImage + ) { lock (_locker) { @@ -71,6 +80,7 @@ Modular = this.PageGuid.Modular, MoudingType = eMoudingType.Tab, Function = SimulationFunctionHelper.Info, + TagName = $"{project.ID}-{projectSite.ID}" }; if (!IsExistPage(guid, true)) { @@ -83,8 +93,15 @@ } //鏄剧ず椤圭洰绔欐按鍔涙ā鎷熶簨浠� - private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent - (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, Dictionary<HydroWorkingVmo, bool> allWorkingCheckedListDict, DevExpress.Utils.Svg.SvgImage svgImage) + private void SimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + XhsSchemeVmo scheme, + Yw.Model.HydroModelInfo hydroInfo, + Dictionary<HydroWorkingVmo, bool> allWorkingCheckedListDict, + SvgImage svgImage + ) { lock (_locker) { @@ -93,7 +110,7 @@ Modular = this.PageGuid.Modular, MoudingType = eMoudingType.Tab, Function = SimulationFunctionHelper.Simulation, - TagName = projectSite.ID.ToString() + TagName = $"{project.ID}-{projectSite.ID}-{scheme?.ID}" }; if (!IsExistPage(guid, true)) { @@ -101,17 +118,32 @@ page.PageTitle.HeaderSvgImage = svgImage; page.AppendWorkingEvent += (working) => { - this.xhsProjectSimulationFunctionMgrCtrl1.AppendWorking(working); + this.simulationFunctionMgrCtrl1.AppendWorking(scheme, working); }; - page.SetBindingData(project, projectSite, hydroInfo, allWorkingCheckedListDict); + page.SaveModelEvent += (rhs) => + { + return this.simulationFunctionMgrCtrl1.SaveModel(scheme, rhs); + }; + page.RefreshModelEvent += () => + { + return this.simulationFunctionMgrCtrl1.RefreshModel(scheme); + }; + page.SetBindingData(project, projectSite, scheme, hydroInfo, allWorkingCheckedListDict); CreatePage(page, guid); } } } //鏄剧ず椤圭洰绔欏伐鍐典簨浠� - private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent - (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working, DevExpress.Utils.Svg.SvgImage svgImage) + private void SimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + XhsSchemeVmo scheme, + Yw.Model.HydroModelInfo hydroInfo, + HydroWorkingVmo working, + SvgImage svgImage + ) { lock (_locker) { @@ -120,21 +152,93 @@ Modular = this.PageGuid.Modular, MoudingType = eMoudingType.Tab, Function = SimulationFunctionHelper.Working, - TagName = working.ID.ToString() + TagName = $"{project.ID}-{projectSite.ID}-{scheme?.ID}-{working.ID}" }; if (!IsExistPage(guid, true)) { var page = new XhsProjectSimulationWorkingPage(); + page.UpdateWorkingEvent += (rhs) => + { + this.simulationFunctionMgrCtrl1.UpdateWorking(scheme, rhs); + }; + page.RemoveWorkingEvent += (rhs) => + { + this.simulationFunctionMgrCtrl1.RemoveWorking(scheme, rhs); + }; page.PageTitle.HeaderSvgImage = svgImage; - page.SetBindingData(project, projectSite, hydroInfo, working); + page.SetBindingData(project, projectSite, scheme, hydroInfo, working); CreatePage(page, guid); } } } + //椤圭洰绔欏伐鍐垫洿鏂颁簨浠� + private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + XhsSchemeVmo scheme, + HydroWorkingVmo working + ) + { + var guid = new PageGuid() + { + Modular = this.PageGuid.Modular, + MoudingType = eMoudingType.Tab, + Function = SimulationFunctionHelper.Simulation, + TagName = projectSite.ID.ToString() + }; + var page = FindPage(guid); + if (page == null) + { + return; + } + var ctrl = page as XhsProjectSimulationCorePage; + if (ctrl == null) + { + return; + } + ctrl.UpdateWorkingCheckedList(working); + } + + //椤圭洰绔欏伐鍐电Щ闄や簨浠� + private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + XhsSchemeVmo scheme, + HydroWorkingVmo working + ) + { + var guid = new PageGuid() + { + Modular = this.PageGuid.Modular, + MoudingType = eMoudingType.Tab, + Function = SimulationFunctionHelper.Simulation, + TagName = projectSite.ID.ToString() + }; + var page = FindPage(guid); + if (page == null) + { + return; + } + var ctrl = page as XhsProjectSimulationCorePage; + if (ctrl == null) + { + return; + } + ctrl.RemoveWorkingCheckedList(working); + } + //椤圭洰绔欏伐鍐甸�夋嫨鏀瑰彉浜嬩欢 - private void XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent - (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working, bool hasChecked) + private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + XhsSchemeVmo scheme, + HydroWorkingVmo working, + bool hasChecked + ) { var guid = new PageGuid() { @@ -156,44 +260,24 @@ ctrl.UpdateWorkingCheckedList(working, hasChecked); } - - - //鍒涘缓椤圭洰鏂规浜嬩欢 - private void XhsProjectSimulationFunctionMgrCtrl1_CreateProjectSchemeEvent(DevExpress.Utils.Svg.SvgImage svgImage) + //椤圭洰绔欐柟妗堝垱寤轰簨浠� + private void SimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent + ( + XhsProjectVmo project, + XhsProjectSiteVmo projectSite, + Yw.Model.HydroModelInfo hydroInfo, + SvgImage svgImage + ) { - //if (_projectSite == null) - //{ - // return; - //} - //var dlg = new AddXhsProjectSimulationSchemeDlg(); - //await dlg.SetBindingData(_projectSite.ID); - //dlg.ReloadDataEvent += (scheme) => - //{ - // this.xhsProjectSimulationFunctionMgrCtrl1.AppendScheme(scheme); - //}; - //dlg.ShowDialog(); - + WaitFormHelper.ShowWaitForm(this.FindForm(), "姝e湪鍔犺浇妯″瀷锛岃绋嶄警..."); var dlg = new AddXhsSchemeDlg(); - // await dlg.SetBindingData(_project, _projectSite, _hydroInfo); + dlg.Shown += delegate { WaitFormHelper.HideWaitForm(this.FindForm()); }; + dlg.ReloadDataEvent += (rhs) => + { + this.simulationFunctionMgrCtrl1.AppendScheme(rhs); + }; + dlg.SetBindingData(project, projectSite, hydroInfo); dlg.ShowDialog(); - } - - //鏄剧ず椤圭洰鏂规浜嬩欢 - private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSchemeEvent(XhsSchemeVmo arg1, DevExpress.Utils.Svg.SvgImage arg2) - { - - } - - //姣旇緝椤圭洰宸ュ喌浜嬩欢 - private void XhsProjectSimulationFunctionMgrCtrl1_CompareProjectWorkingEvent(DevExpress.Utils.Svg.SvgImage obj) - { - - } - - //鏄剧ず椤圭洰宸ュ喌浜嬩欢 - private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectWorkingEvent(HydroWorkingVmo arg1, DevExpress.Utils.Svg.SvgImage arg2) - { - } #endregion @@ -430,7 +514,6 @@ docPnl.Show(); } break; - case eMoudingType.Tab: { this.tabbedView1.BeginUpdate(); @@ -449,7 +532,6 @@ this.tabbedView1.Controller.Activate(doc); } break; - default: break; } page.InitialDataSource(); -- Gitblit v1.9.3