lixiaojun
2025-01-06 80ec78f9c85466b09ac4a4101d5073c26f37021e
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
@@ -25,7 +25,7 @@
            this.hydroVisualPropertyCtrl1.FlowEffectPropertyValueChangedEvent += HydroVisualPropertyCtrl1_FlowEffectPropertyValueChangedEvent;
        }
        #region 事件集
        #region 事件集合
        /// <summary>
        /// 构件查看事件
@@ -59,7 +59,15 @@
        /// </summary>
        public event Action<HydroVisualInfo> FlowEffectPropertyValueChangedEvent;
        #endregion 事件集
        #endregion
        /// <summary>
        /// 初始化数据
        /// </summary>
        public void InitialData(HydroPropStatusHelper propStatusHelper)
        {
            this.hydroVisualPropertyCtrl1.InitialData(propStatusHelper);
        }
        #region 属性赋值
@@ -81,7 +89,12 @@
            set { this.hydroVisualPropertyCtrl1.SelectedObject = value; }
        }
        #endregion 属性赋值
        /// <summary>
        /// 计算结果
        /// </summary>
        public Func<HydroCalcuResult> CalcuResult { get; set; }
        #endregion
        #region 属性更新
@@ -115,7 +128,7 @@
            this.hydroVisualPropertyCtrl1.UpdateRows();
        }
        #endregion 属性更新
        #endregion
        #region 事件实现
@@ -168,7 +181,7 @@
                    {
                        var bluntheadViewModel = vm as HydroBluntheadViewModel;
                        var input = HydroMatchingHelper.Create(bluntheadViewModel);
                        var dlg = new SimulationBluntheadSingleMatchingDlg();
                        var dlg = new AssetsBluntheadSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(bluntheadViewModel, output);
@@ -186,7 +199,7 @@
                    {
                        var elbowViewModel = vm as HydroElbowViewModel;
                        var input = HydroMatchingHelper.Create(elbowViewModel);
                        var dlg = new SimulationElbowSingleMatchingDlg();
                        var dlg = new AssetsElbowSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(elbowViewModel, output);
@@ -204,7 +217,7 @@
                    {
                        var threelinkViewModel = vm as HydroThreelinkViewModel;
                        var input = HydroMatchingHelper.Create(threelinkViewModel);
                        var dlg = new SimulationThreelinkSingleMatchingDlg();
                        var dlg = new AssetsThreelinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(threelinkViewModel, output);
@@ -222,7 +235,7 @@
                    {
                        var fourlinkViewModel = vm as HydroFourlinkViewModel;
                        var input = HydroMatchingHelper.Create(fourlinkViewModel);
                        var dlg = new SimulationFourlinkSingleMatchingDlg();
                        var dlg = new AssetsFourlinkSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(fourlinkViewModel, output);
@@ -294,7 +307,7 @@
                    {
                        var nozzleViewModel = vm as HydroNozzleViewModel;
                        var input = HydroMatchingHelper.Create(nozzleViewModel);
                        var dlg = new SimulationSprinklerSingleMatchingDlg();
                        var dlg = new AssetsSprinklerSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(nozzleViewModel, output);
@@ -312,10 +325,28 @@
                    {
                        var hydrantViewModel = vm as HydroHydrantViewModel;
                        var input = HydroMatchingHelper.Create(hydrantViewModel);
                        var dlg = new SimulationHydrantSingleMatchingDlg();
                        var dlg = new AssetsHydrantSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(hydrantViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.GradingPropertyValueChangedEvent?.Invoke(vm.Vmo);
                        };
                        dlg.SetBindingData(input);
                        dlg.ShowDialog();
                    }
                    break;
                case Yw.Hydro.ParterCatalog.Cooling:
                    {
                        var coolingViewModel = vm as HydroCoolingViewModel;
                        var input = HydroMatchingHelper.Create(coolingViewModel);
                        var dlg = new AssetsCoolingSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(coolingViewModel, output);
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                            this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                            this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -330,7 +361,7 @@
                    {
                        var pipeViewModel = vm as HydroPipeViewModel;
                        var input = HydroMatchingHelper.Create(pipeViewModel);
                        var dlg = new SimulationPipeSingleMatchingDlg();
                        var dlg = new AssetsPipeSingleMatchingDlg();
                        dlg.ReloadDataEvent += (output) =>
                        {
                            HydroMatchingHelper.Apply(pipeViewModel, output);
@@ -455,7 +486,7 @@
                            pumpViewModel.UpdateProperty();
                            this.hydroVisualPropertyCtrl1.UpdateRows();
                        };
                        dlg.SetBindingData(pumpViewModel);
                        dlg.SetBindingData(pumpViewModel, this.CalcuResult?.Invoke());
                        dlg.ShowDialog();
                    }
                    break;
@@ -512,7 +543,7 @@
            }
        }
        #endregion 事件实现
        #endregion
        #region 事件穿透
@@ -560,6 +591,6 @@
            this.FlowEffectPropertyValueChangedEvent?.Invoke(vm?.Vmo);
        }
        #endregion 事件穿透
        #endregion
    }
}