| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 选择曲线事件 |
| | | /// 匹配db事件 |
| | | /// </summary> |
| | | public event Func<HydroParterPropertyViewModel, string, bool> SelectCurveEvent; |
| | | public event Action<Yw.Model.HydroParterInfo> MatchingDbEvent; |
| | | /// <summary> |
| | | /// 选择模式事件 |
| | | /// 查看曲线事件 |
| | | /// </summary> |
| | | public event Func<HydroParterPropertyViewModel, string, bool> SelectPatternEvent; |
| | | public event Action<Yw.Model.HydroParterInfo, string> ViewCurveEvent; |
| | | /// <summary> |
| | | /// 设置曲线事件 |
| | | /// </summary> |
| | | public event Func<HydroParterPropertyViewModel, string, bool> SetCurveEvent; |
| | | /// <summary> |
| | | /// 设置模式事件 |
| | | /// </summary> |
| | | public event Func<HydroParterPropertyViewModel, string, bool> SetPatternEvent; |
| | | /// <summary> |
| | | /// 属性值正在改变事件 |
| | | /// </summary> |
| | |
| | | /// </summary> |
| | | public event Func<HydroParterPropertyViewModel, bool> PropertyValueChangedEvent; |
| | | |
| | | /// <summary> |
| | | /// 匹配db事件 |
| | | /// </summary> |
| | | public event Action<Yw.Model.HydroParterInfo> MatchingDbEvent; |
| | | |
| | | |
| | | //获取水力信息方法 |
| | | private Func<Yw.Model.HydroModelInfo> _hydroInfoFunc = null; |
| | |
| | | set |
| | | { |
| | | this.propertyGridControl1.SelectedObject = value; |
| | | OnChanged(); |
| | | } |
| | | } |
| | | |
| | |
| | | set |
| | | { |
| | | this.propertyGridControl1.SelectedObjects = value?.ToArray(); |
| | | OnChanged(); |
| | | } |
| | | } |
| | | |
| | | |
| | | //改变触发 |
| | | protected virtual void OnChanged() |
| | | { |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | buttonEdit.TextEditStyle = TextEditStyles.DisableTextEditor; |
| | | buttonEdit.ButtonClick += delegate |
| | | { |
| | | var vm = GetPropertyViewModel(e.Row); |
| | | if (this.SelectCurveEvent == null || !this.SelectCurveEvent.Invoke(vm, curvePro.CurveType)) |
| | | var hydroInfo = _hydroInfoFunc?.Invoke(); |
| | | if (hydroInfo == null) |
| | | { |
| | | var hydroInfo = _hydroInfoFunc?.Invoke(); |
| | | if (hydroInfo == null) |
| | | { |
| | | return; |
| | | } |
| | | switch (curvePro.CurveType) |
| | | { |
| | | case HydroCurve.Pump: |
| | | return; |
| | | } |
| | | var vm = GetPropertyViewModel(e.Row); |
| | | switch (curvePro.CurveType) |
| | | { |
| | | case HydroCurve.Pump: |
| | | { |
| | | var pumpInfo = hydroInfo.Pumps?.Find(x => x.Code == vm.Code); |
| | | if (pumpInfo == null) |
| | | { |
| | | |
| | | return; |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQH: |
| | | this.ViewCurveEvent?.Invoke(pumpInfo, HydroCurve.Pump); |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQH: |
| | | { |
| | | if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePro.CurveType)) |
| | | { |
| | | var vmPump = vm as HydroPumpPropertyViewModel; |
| | | var curveQh = hydroInfo.Curves?.Find(x => x.Code == vmPump.CurveQH); |
| | |
| | | dlg.SetBindingData(hydroInfo, curveQh, curvePro.CurveType); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQP: |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQP: |
| | | { |
| | | if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePro.CurveType)) |
| | | { |
| | | var vmPump = vm as HydroPumpPropertyViewModel; |
| | | var curveQp = hydroInfo.Curves?.Find(x => x.Code == vmPump.CurveQP); |
| | |
| | | dlg.SetBindingData(hydroInfo, curveQp, curvePro.CurveType); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQE: |
| | | } |
| | | break; |
| | | case HydroCurve.PumpQE: |
| | | { |
| | | if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePro.CurveType)) |
| | | { |
| | | var vmPump = vm as HydroPumpPropertyViewModel; |
| | | var curveQe = hydroInfo.Curves?.Find(x => x.Code == vmPump.CurveQE); |
| | |
| | | dlg.SetBindingData(hydroInfo, curveQe, curvePro.CurveType); |
| | | dlg.ShowDialog(); |
| | | } |
| | | break; |
| | | case HydroCurve.Valve: |
| | | } |
| | | break; |
| | | case HydroCurve.Valve: |
| | | { |
| | | |
| | | } |
| | | break; |
| | | case HydroCurve.ValveQL: |
| | | { |
| | | if (this.SetCurveEvent == null || !this.SetCurveEvent.Invoke(vm, curvePro.CurveType)) |
| | | { |
| | | |
| | | } |
| | | break; |
| | | case HydroCurve.ValveQL: |
| | | { |
| | | |
| | | } |
| | | break; |
| | | default: break; |
| | | } |
| | | } |
| | | break; |
| | | default: break; |
| | | } |
| | | }; |
| | | e.RepositoryItem = buttonEdit; |
| | |
| | | buttonEdit.ButtonClick += delegate |
| | | { |
| | | var vm = GetPropertyViewModel(e.Row); |
| | | this.SelectPatternEvent?.Invoke(vm, patternPro.PatternType); |
| | | this.SetPatternEvent?.Invoke(vm, patternPro.PatternType); |
| | | }; |
| | | e.RepositoryItem = buttonEdit; |
| | | } |