From 7b65f86343ca014b12894f09b7d62e8b5ac1f95d Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期五, 24 一月 2025 09:15:11 +0800
Subject: [PATCH] 单工况损失曲线增加上下游追踪和高亮显示

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs |   33 ++++++++++++++++++---------------
 1 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
index 25e874e..243bc02 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/SimulationPropertyCtrl.cs
@@ -63,6 +63,8 @@
                 HydroPropStatusHelper propStatusHelper
             )
         {
+            _changeHelper = changeHelper;
+            _propStatusHelper = propStatusHelper;
             this.hydroVisualPropertyCtrl1.InitialData(changeHelper, propStatusHelper);
         }
 
@@ -145,7 +147,7 @@
                         var dlg = new AssetsTankSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(tankViewModel, output);
+                            HydroMatchingHelper.Apply(tankViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -163,7 +165,7 @@
                         var dlg = new AssetsTankSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(tankViewModel, output);
+                            HydroMatchingHelper.Apply(tankViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -181,7 +183,7 @@
                         var dlg = new AssetsBluntheadSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(bluntheadViewModel, output);
+                            HydroMatchingHelper.Apply(bluntheadViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -199,7 +201,7 @@
                         var dlg = new AssetsElbowSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(elbowViewModel, output);
+                            HydroMatchingHelper.Apply(elbowViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -235,7 +237,7 @@
                         var dlg = new AssetsFourlinkSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(fourlinkViewModel, output);
+                            HydroMatchingHelper.Apply(fourlinkViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -253,7 +255,7 @@
                         var dlg = new AssetsMeterSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(meterViewModel, output);
+                            HydroMatchingHelper.Apply(meterViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -271,7 +273,7 @@
                         var dlg = new AssetsFlowmeterSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(flowmeterViewModel, output);
+                            HydroMatchingHelper.Apply(flowmeterViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -289,7 +291,7 @@
                         var dlg = new AssetsPressmeterSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(pressmeterViewModel, output);
+                            HydroMatchingHelper.Apply(pressmeterViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -307,7 +309,7 @@
                         var dlg = new AssetsSprinklerSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(nozzleViewModel, output);
+                            HydroMatchingHelper.Apply(nozzleViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -325,7 +327,7 @@
                         var dlg = new AssetsHydrantSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(hydrantViewModel, output);
+                            HydroMatchingHelper.Apply(hydrantViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -343,7 +345,7 @@
                         var dlg = new AssetsCoolingSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(coolingViewModel, output);
+                            HydroMatchingHelper.Apply(coolingViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -361,12 +363,13 @@
                         var dlg = new AssetsPipeSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(pipeViewModel, output);
+                            HydroMatchingHelper.Apply(pipeViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.GradingPropertyValueChangedEvent?.Invoke(vm.Vmo);
                         };
+                        dlg.SetBindingData(input);
                         dlg.ShowDialog();
                     }
                     break;
@@ -378,7 +381,7 @@
                         var dlg = new SimulationPumpSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(pumpViewModel, output);
+                            HydroMatchingHelper.Apply(pumpViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -396,7 +399,7 @@
                         var dlg = new AssetsValveSingleMatchingDlg();
                         dlg.ReloadDataEvent += (output) =>
                         {
-                            HydroMatchingHelper.Apply(valveViewModel, output);
+                            HydroMatchingHelper.Apply(valveViewModel, output, _changeHelper, _propStatusHelper);
                             this.hydroVisualPropertyCtrl1.UpdateRows();
                             this.PropertyValueChangedEvent?.Invoke(vm.Vmo);
                             this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo);
@@ -491,7 +494,7 @@
                 case HydroCurve.Valve:
                     {
                         var valveViewModel = vm as HydroValveViewModel;
-                        var curveInfo = valveViewModel.HydroInfo.Curves?.Find(x => x.Code == valveViewModel.ValveSetting);
+                        var curveInfo = valveViewModel.HydroInfo.Curves?.Find(x => x.Code == valveViewModel.CurveOL);
                         if (curveInfo != null)
                         {
                             if (long.TryParse(curveInfo.DbId, out long longDbId))

--
Gitblit v1.9.3