From c9585ab171fb973d16792d7a290994bf8279da63 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期六, 09 十一月 2024 09:56:41 +0800 Subject: [PATCH] 属性视图调整 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/10-nozzle/HydroNozzleListCtrl.cs | 257 ++++++++++++++++++++++++++++++++------------------- 1 files changed, 160 insertions(+), 97 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/10-nozzle/HydroNozzleListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/10-nozzle/HydroNozzleListCtrl.cs similarity index 68% rename from WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/10-nozzle/HydroNozzleListCtrl.cs rename to WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/10-nozzle/HydroNozzleListCtrl.cs index d1460e9..6ce9b50 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/10-nozzle/HydroNozzleListCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/10-nozzle/HydroNozzleListCtrl.cs @@ -3,7 +3,7 @@ namespace Yw.WinFrmUI { - public partial class HydroNozzleListCtrl : DevExpress.XtraEditors.XtraUserControl, IHydroParterList + public partial class HydroNozzleListCtrl : DevExpress.XtraEditors.XtraUserControl, IHydroVisualList { public HydroNozzleListCtrl() { @@ -16,11 +16,19 @@ /// <summary> /// 姘村姏鐐瑰嚮浜嬩欢 /// </summary> - public event Action<Yw.Model.HydroParterInfo> HydroClickEvent; + public event Action<Yw.Model.HydroVisualInfo> HydroClickInfoEvent; + /// <summary> + /// 姘村姏鐐瑰嚮瑙嗗浘浜嬩欢 + /// </summary> + public event Action<HydroVisualViewModel> HydroClickViewEvent; /// <summary> /// 姘村姏鏀瑰彉浜嬩欢 /// </summary> - public event Action<List<HydroParterInfo>> HydroChangedEvent; + public event Action<List<Yw.Model.HydroVisualInfo>> HydroChangedInfoEvent; + /// <summary> + /// 姘村姏鏀瑰彉瑙嗗浘浜嬩欢 + /// </summary> + public event Action<List<HydroVisualViewModel>> HydroChangedViewEvent; /// <summary> /// 鏄剧ず鏌ヨ闈㈡澘 @@ -35,7 +43,7 @@ } /// <summary> - /// 鏄惁鎷ユ湁姘村埄鍒楄〃 + /// 鏄惁鎷ユ湁姘村姏鍒楄〃 /// </summary> public bool HasHydroList { @@ -50,14 +58,14 @@ /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(HydroModelInfo hydroInfo) + public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) { _allList = new List<HydroNozzleViewModel>(); if (hydroInfo != null && hydroInfo.Nozzles != null && hydroInfo.Nozzles.Count > 0) { - foreach (var nozzle in hydroInfo.Nozzles) + foreach (var visual in hydroInfo.Nozzles) { - var vm = new HydroNozzleViewModel(nozzle, hydroInfo); + var vm = new HydroNozzleViewModel(visual, hydroInfo); _allList.Add(vm); } } @@ -72,10 +80,10 @@ _allList = new List<HydroNozzleViewModel>(); if (hydroInfo != null && hydroInfo.Nozzles != null && hydroInfo.Nozzles.Count > 0) { - foreach (var nozzle in hydroInfo.Nozzles) + foreach (var visual in hydroInfo.Nozzles) { - var vm = new HydroNozzleViewModel(nozzle, hydroInfo); - var calcuResult = allCalcuResultList?.Find(x => x.Code == nozzle.Code); + var vm = new HydroNozzleViewModel(visual, hydroInfo); + var calcuResult = allCalcuResultList?.Find(x => x.Code == visual.Code); if (calcuResult != null) { vm.UpdateCalcuProperty(calcuResult); @@ -84,6 +92,30 @@ } } Search(); + } + + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(List<HydroVisualViewModel> allVisualViewModelList) + { + _allList = new List<HydroNozzleViewModel>(); + allVisualViewModelList?.ForEach(x => + { + if (x.Catalog == HydroParterCatalogHelper.GetName(Yw.Hydro.ParterCatalog.Nozzle)) + { + _allList.Add(x as HydroNozzleViewModel); + } + }); + Search(); + } + + /// <summary> + /// 鏇存柊缁戝畾 + /// </summary> + public void UpdateBindingData() + { + this.hydroNozzleViewModelBindingSource.ResetBindings(false); } /// <summary> @@ -102,17 +134,17 @@ /// <summary> /// 鏇存柊灞炴�� /// </summary> - public void UpdateProperty(Yw.Model.HydroParterInfo parter) + public void UpdateProperty(Yw.Model.HydroVisualInfo visual) { if (_allList == null || _allList.Count < 1) { return; } - if (parter == null) + if (visual == null) { return; } - var vm = _allList.Find(x => x.Code == parter.Code); + var vm = _allList.Find(x => x.Code == visual.Code); if (vm == null) { return; @@ -124,17 +156,17 @@ /// <summary> /// 鏇存柊灞炴�� /// </summary> - public void UpdateProperty(List<Yw.Model.HydroParterInfo> parterList) + public void UpdateProperty(List<Yw.Model.HydroVisualInfo> visualList) { if (_allList == null || _allList.Count < 1) { return; } - if (parterList == null || parterList.Count < 1) + if (visualList == null || visualList.Count < 1) { return; } - parterList.ForEach(x => + visualList.ForEach(x => { var vm = _allList.Find(t => x.Code == x.Code); if (vm != null) @@ -154,12 +186,12 @@ { if (_allList != null && _allList.Count > 0) { - foreach (var parter in _allList) + foreach (var visual in _allList) { - var calcuResult = allCalcuResultList.Find(x => x.Code == parter.Code); + var calcuResult = allCalcuResultList.Find(x => x.Code == visual.Code); if (calcuResult != null) { - parter.UpdateCalcuProperty(calcuResult); + visual.UpdateCalcuProperty(calcuResult); } } this.hydroNozzleViewModelBindingSource.ResetBindings(false); @@ -209,101 +241,40 @@ Search(); if (_allBindingList == null || _allBindingList.Count < 1) { - XtraMessageBox.Show("鏃犲彲璁剧疆鍠峰槾鏁版嵁"); + TipFormHelper.ShowWarn("鏃犳暟鎹紒"); return; } var dlg = new SetHydroNozzleDlg(); dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList()); dlg.ReloadDataEvent += (list) => { - _allBindingList.ForEach(x => - { - x.UpdateProperty(); - }); + _allBindingList.ForEach(x => x.UpdateProperty()); this.hydroNozzleViewModelBindingSource.ResetBindings(false); - var allParterList = _allBindingList.Select(x => x.Vmo as Yw.Model.HydroParterInfo).ToList(); - this.HydroChangedEvent?.Invoke(allParterList); + var allVisualViewModelList = _allBindingList.Select(x => x as HydroVisualViewModel).ToList(); + this.HydroChangedViewEvent?.Invoke(allVisualViewModelList); + var allVisualInfoList = allVisualViewModelList.Select(x => x.Vmo).ToList(); + this.HydroChangedInfoEvent?.Invoke(allVisualInfoList); }; dlg.ShowDialog(); } - /// <summary> - /// 璁剧疆绠�鍗曟樉绀烘ā寮� - /// </summary> - public void SetSimpleView() + //鏌ヨ + private void btnSearch_Click(object sender, EventArgs e) { - this.colDbLocked.Visible = true; - this.colCode.Visible = true; - this.colName.Visible = true; - this.colModelType.Visible = true; - this.colHasDb.Visible = true; - this.colCoefficient.Visible = true; - this.colElev.Visible = false; - this.colMinorLoss.Visible = false; - this.colCalcuPress.Visible = false; - this.colCalcuHead.Visible = false; - this.colCalcuDemand.Visible = false; - this.colFlags.Visible = true; - this.colDescription.Visible = true; + Search(); } - /// <summary> - /// 璁剧疆姝e父鏄剧ず妯″紡 - /// </summary> - public void SetNormalView() + //閲嶇疆 + private void btnReset_Click(object sender, EventArgs e) { - this.colDbLocked.Visible = true; - this.colCode.Visible = true; - this.colName.Visible = true; - this.colModelType.Visible = true; - this.colHasDb.Visible = true; - this.colCoefficient.Visible = true; - this.colElev.Visible = false; - this.colMinorLoss.Visible = false; - this.colCalcuPress.Visible = false; - this.colCalcuHead.Visible = false; - this.colCalcuDemand.Visible = false; - this.colFlags.Visible = true; - this.colDescription.Visible = true; + Reset(); } - /// <summary> - /// 璁剧疆璁$畻鏄剧ず妯″紡 - /// </summary> - public void SetCalcuView() + //璁剧疆 + private void btnSet_Click(object sender, EventArgs e) { - this.colDbLocked.Visible = true; - this.colCode.Visible = true; - this.colName.Visible = true; - this.colModelType.Visible = true; - this.colHasDb.Visible = true; - this.colCoefficient.Visible = true; - this.colElev.Visible = false; - this.colMinorLoss.Visible = false; - this.colCalcuPress.Visible = false; - this.colCalcuHead.Visible = false; - this.colCalcuDemand.Visible = false; - this.colFlags.Visible = true; - this.colDescription.Visible = true; + Set(); } - - public void SetBulkSetView() - { - this.colDbLocked.Visible = true; - this.colCode.Visible = true; - this.colName.Visible = true; - this.colModelType.Visible = true; - this.colHasDb.Visible = true; - this.colCoefficient.Visible = true; - this.colElev.Visible = false; - this.colMinorLoss.Visible = false; - this.colCalcuPress.Visible = false; - this.colCalcuHead.Visible = false; - this.colCalcuDemand.Visible = false; - this.colFlags.Visible = true; - this.colDescription.Visible = true; - } - private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) { @@ -321,16 +292,108 @@ { row.UpdateProperty(); this.gridView1.RefreshRow(e.RowHandle); - this.HydroChangedEvent?.Invoke(new List<Model.HydroParterInfo>() { row.Vmo }); + this.HydroChangedViewEvent?.Invoke(new List<HydroVisualViewModel>() { row }); + this.HydroChangedInfoEvent?.Invoke(new List<HydroVisualInfo>() { row.Vmo }); }; dlg.ShowDialog(); } else { - this.HydroClickEvent?.Invoke(row.Vmo); + this.HydroClickViewEvent?.Invoke(row); + this.HydroClickInfoEvent?.Invoke(row.Vmo); } } + /// <summary> + /// 璁剧疆绠�鍗曟樉绀烘ā寮� + /// </summary> + public void SetSimpleView() + { + this.groupForHead.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + this.colDbLocked.Visible = false; + this.colName.Visible = true; + this.colCode.Visible = true; + this.colModelType.Visible = true; + this.colCoefficient.Visible = true; + this.colElev.Visible = false; + this.colMinorLoss.Visible = false; + this.colCalcuPress.Visible = false; + this.colCalcuHead.Visible = false; + this.colCalcuDemand.Visible = false; + this.colHasDb.Visible = false; + this.colFlags.Visible = true; + this.colDescription.Visible = true; + this.colSet.Visible = false; + } + + /// <summary> + /// 璁剧疆姝e父鏄剧ず妯″紡 + /// </summary> + public void SetNormalView() + { + this.groupForHead.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + this.colDbLocked.Visible = true; + this.colName.Visible = true; + this.colCode.Visible = true; + this.colModelType.Visible = true; + this.colCoefficient.Visible = true; + this.colElev.Visible = true; + this.colMinorLoss.Visible = true; + this.colCalcuPress.Visible = false; + this.colCalcuHead.Visible = false; + this.colCalcuDemand.Visible = false; + this.colHasDb.Visible = true; + this.colFlags.Visible = true; + this.colDescription.Visible = true; + this.colSet.Visible = true; + } + + /// <summary> + /// 璁剧疆璁$畻鏄剧ず妯″紡 + /// </summary> + public void SetCalcuView() + { + this.groupForHead.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + this.colDbLocked.Visible = true; + this.colCode.Visible = true; + this.colName.Visible = true; + this.colModelType.Visible = true; + this.colCoefficient.Visible = true; + this.colElev.Visible = true; + this.colMinorLoss.Visible = true; + this.colCalcuPress.Visible = true; + this.colCalcuHead.Visible = true; + this.colCalcuDemand.Visible = true; + this.colHasDb.Visible = true; + this.colFlags.Visible = true; + this.colDescription.Visible = true; + this.colSet.Visible = true; + } + + /// <summary> + /// 璁剧疆鎵归噺璁剧疆妯″紡 + /// </summary> + public void SetBulkSetView() + { + this.groupForHead.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; + this.colDbLocked.Visible = true; + this.colName.Visible = true; + this.colCode.Visible = true; + this.colModelType.Visible = true; + this.colCoefficient.Visible = true; + this.colElev.Visible = true; + this.colMinorLoss.Visible = true; + this.colCalcuPress.Visible = false; + this.colCalcuHead.Visible = false; + this.colCalcuDemand.Visible = false; + this.colHasDb.Visible = true; + this.colFlags.Visible = true; + this.colDescription.Visible = true; + this.colSet.Visible = true; + } + + + } } -- Gitblit v1.9.3