| | |
| | | /// </summary> |
| | | public event Action<HydroVisualInfo> FlowEffectPropertyValueChangedEvent; |
| | | |
| | | #endregion 事件集 |
| | | #endregion |
| | | |
| | | #region 属性赋值 |
| | | |
| | |
| | | set { this.hydroVisualPropertyCtrl1.SelectedObject = value; } |
| | | } |
| | | |
| | | #endregion 属性赋值 |
| | | #endregion |
| | | |
| | | #region 属性更新 |
| | | |
| | |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | } |
| | | |
| | | #endregion 属性更新 |
| | | #endregion |
| | | |
| | | #region 事件实现 |
| | | |
| | |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Waterbox: |
| | | { |
| | | var tankViewModel = vm as HydroTankViewModel; |
| | |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Blunthead: |
| | | { |
| | | var bluntheadViewModel = vm as HydroBluntheadViewModel; |
| | | var input = HydroMatchingHelper.Create(bluntheadViewModel); |
| | | var dlg = new SimulationBluntheadSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(bluntheadViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Elbow: |
| | | { |
| | | var elbowViewModel = vm as HydroElbowViewModel; |
| | |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Threelink: |
| | | { |
| | | var threelinkViewModel = vm as HydroThreelinkViewModel; |
| | | var input = HydroMatchingHelper.Create(threelinkViewModel); |
| | | var dlg = new SimulationThreelinkSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(threelinkViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Fourlink: |
| | | { |
| | | var fourlinkViewModel = vm as HydroFourlinkViewModel; |
| | | var input = HydroMatchingHelper.Create(fourlinkViewModel); |
| | | var dlg = new SimulationFourlinkSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(fourlinkViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Meter: |
| | | { |
| | | var meterViewModel = vm as HydroMeterViewModel; |
| | | var input = HydroMatchingHelper.Create(meterViewModel); |
| | | var dlg = new SimulationMeterSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(meterViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Flowmeter: |
| | | { |
| | | var flowmeterViewModel = vm as HydroFlowmeterViewModel; |
| | | var input = HydroMatchingHelper.Create(flowmeterViewModel); |
| | | var dlg = new SimulationFlowmeterSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(flowmeterViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Pressmeter: |
| | | { |
| | | var pressmeterViewModel = vm as HydroPressmeterViewModel; |
| | | var input = HydroMatchingHelper.Create(pressmeterViewModel); |
| | | var dlg = new SimulationPressmeterSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(pressmeterViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Nozzle: |
| | | { |
| | | var nozzleViewModel = vm as HydroNozzleViewModel; |
| | | var input = HydroMatchingHelper.Create(nozzleViewModel); |
| | | var dlg = new SimulationSprinklerSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(nozzleViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Hydrant: |
| | | { |
| | | var hydrantViewModel = vm as HydroHydrantViewModel; |
| | | var input = HydroMatchingHelper.Create(hydrantViewModel); |
| | | var dlg = new SimulationHydrantSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(hydrantViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Pipe: |
| | | { |
| | | var pipeViewModel = vm as HydroPipeViewModel; |
| | |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Pump: |
| | | { |
| | | var pumpViewModel = vm as HydroPumpViewModel; |
| | |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Valve: |
| | | { |
| | | var valveViewModel = vm as HydroValveViewModel; |
| | | var input = HydroMatchingHelper.Create(valveViewModel); |
| | | var dlg = new SimulationValveSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(valveViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Exchanger: |
| | | { |
| | | var exchangerViewModel = vm as HydroExchangerViewModel; |
| | | var input = HydroMatchingHelper.Create(exchangerViewModel); |
| | | var dlg = new SimulationExchangerSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(exchangerViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case Yw.Hydro.ParterCatalog.Compressor: |
| | | { |
| | | var compressorViewModel = vm as HydroCompressorViewModel; |
| | | var input = HydroMatchingHelper.Create(compressorViewModel); |
| | | var dlg = new SimulationCompressorSingleMatchingDlg(); |
| | | dlg.ReloadDataEvent += (output) => |
| | | { |
| | | HydroMatchingHelper.Apply(compressorViewModel, output); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(input); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | default: break; |
| | | |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | case HydroCurve.Tank: |
| | | { |
| | | if (long.TryParse(vm.DbId, out long longDbId)) |
| | | { |
| | | var tankViewModel = vm as HydroTankViewModel; |
| | | var dlg = new TankChartShowDlg(); |
| | | dlg.SetBingingData(longDbId); |
| | | dlg.ShowDialog(); |
| | | } |
| | | |
| | | } |
| | | break; |
| | | |
| | | case HydroCurve.Pump: |
| | | { |
| | | var pumpViewModel = vm as HydroPumpViewModel; |
| | | //var dlg = new PumpChartShowDlg(); |
| | | var dlg = new SimulationSinglePumpFeatDlg(); |
| | | dlg.SaveEvent += (working) => |
| | | { |
| | | pumpViewModel.Vmo.LinkStatus = working.LinkStatus; |
| | | pumpViewModel.Vmo.SpeedRatio = working.CurrentHz / pumpViewModel.Vmo.RatedHz; |
| | | pumpViewModel.UpdateProperty(); |
| | | this.hydroVisualPropertyCtrl1.UpdateRows(); |
| | | }; |
| | | dlg.SetBindingData(pumpViewModel); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | |
| | | case HydroCurve.Valve: |
| | | { |
| | | if (long.TryParse(vm.DbId, out long longDbId)) |
| | | { |
| | | var valveViewModel = vm as HydroValveViewModel; |
| | | var dlg = new ValveChartShowDlg(); |
| | | dlg.SetBingingData(longDbId); |
| | | dlg.ShowDialog(); |
| | | } |
| | | } |
| | | break; |
| | | |
| | | case HydroCurve.Exchanger: |
| | | { |
| | | if (long.TryParse(vm.DbId, out long longDbId)) |
| | | { |
| | | var exchangerViewModel = vm as HydroExchangerViewModel; |
| | | var dlg = new ExchangerChartShowDlg(); |
| | | dlg.SetBingingData(longDbId); |
| | | dlg.ShowDialog(); |
| | | } |
| | | |
| | | } |
| | | break; |
| | | |
| | | case HydroCurve.Compressor: |
| | | { |
| | | if (long.TryParse(vm.DbId, out long longDbId)) |
| | | { |
| | | var compressorViewModel = vm as HydroCompressorViewModel; |
| | | var dlg = new CompressorChartShowDlg(); |
| | | dlg.SetBingingData(longDbId); |
| | | dlg.ShowDialog(); |
| | | } |
| | | } |
| | | break; |
| | | |
| | | default: break; |
| | | } |
| | | } |
| | | |
| | | #endregion 事件实现 |
| | | #endregion |
| | | |
| | | #region 事件穿透 |
| | | |
| | |
| | | this.FlowEffectPropertyValueChangedEvent?.Invoke(vm?.Vmo); |
| | | } |
| | | |
| | | #endregion 事件穿透 |
| | | #endregion |
| | | |
| | | |
| | | } |
| | | } |