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/15-translation/HydroTranslationListCtrl.cs | 191 ++++++++++++++++++++++++++++++----------------- 1 files changed, 121 insertions(+), 70 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/14-pipe/HydroPipeListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/15-translation/HydroTranslationListCtrl.cs similarity index 69% copy from WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/14-pipe/HydroPipeListCtrl.cs copy to WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/15-translation/HydroTranslationListCtrl.cs index 318440f..e5368ef 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-parter/14-pipe/HydroPipeListCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/15-translation/HydroTranslationListCtrl.cs @@ -1,11 +1,10 @@ -锘縰sing DevExpress.XtraEditors; -using Yw.Model; +锘縰sing Yw.Model; namespace Yw.WinFrmUI { - public partial class HydroPipeListCtrl : DevExpress.XtraEditors.XtraUserControl, IHydroParterList + public partial class HydroTranslationListCtrl : DevExpress.XtraEditors.XtraUserControl, IHydroVisualList { - public HydroPipeListCtrl() + public HydroTranslationListCtrl() { InitializeComponent(); this.gridView1.SetNormalView(30); @@ -17,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> /// 鏄剧ず鏌ヨ闈㈡澘 @@ -36,7 +43,7 @@ } /// <summary> - /// 鏄惁鎷ユ湁姘村埄鍒楄〃 + /// 鏄惁鎷ユ湁姘村姏鍒楄〃 /// </summary> public bool HasHydroList { @@ -44,21 +51,21 @@ } //鎵�鏈夊垪琛� - private List<HydroPipeViewModel> _allList = null; + private List<HydroTranslationViewModel> _allList = null; //鎵�鏈夌粦瀹氬垪琛� - private List<HydroPipeViewModel> _allBindingList = null; + private List<HydroTranslationViewModel> _allBindingList = null; /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(HydroModelInfo hydroInfo) + public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) { - _allList = new List<HydroPipeViewModel>(); - if (hydroInfo != null && hydroInfo.Pipes != null && hydroInfo.Pipes.Count > 0) + _allList = new List<HydroTranslationViewModel>(); + if (hydroInfo != null && hydroInfo.Translations != null && hydroInfo.Translations.Count > 0) { - foreach (var pipe in hydroInfo.Pipes) + foreach (var visual in hydroInfo.Translations) { - var vm = new HydroPipeViewModel(pipe, hydroInfo); + var vm = new HydroTranslationViewModel(visual, hydroInfo); _allList.Add(vm); } } @@ -70,13 +77,13 @@ /// </summary> public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List<HydroCalcuResult> allCalcuResultList) { - _allList = new List<HydroPipeViewModel>(); - if (hydroInfo != null && hydroInfo.Pipes != null && hydroInfo.Pipes.Count > 0) + _allList = new List<HydroTranslationViewModel>(); + if (hydroInfo != null && hydroInfo.Translations != null && hydroInfo.Translations.Count > 0) { - foreach (var pipe in hydroInfo.Pipes) + foreach (var visual in hydroInfo.Translations) { - var vm = new HydroPipeViewModel(pipe, hydroInfo); - var calcuResult = allCalcuResultList?.Find(x => x.Code == pipe.Code); + var vm = new HydroTranslationViewModel(visual, hydroInfo); + var calcuResult = allCalcuResultList?.Find(x => x.Code == visual.Code); if (calcuResult != null) { vm.UpdateCalcuProperty(calcuResult); @@ -85,6 +92,30 @@ } } Search(); + } + + /// <summary> + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(List<HydroVisualViewModel> allVisualViewModelList) + { + _allList = new List<HydroTranslationViewModel>(); + allVisualViewModelList?.ForEach(x => + { + if (x.Catalog == HydroParterCatalogHelper.GetName(Yw.Hydro.ParterCatalog.Translation)) + { + _allList.Add(x as HydroTranslationViewModel); + } + }); + Search(); + } + + /// <summary> + /// 鏇存柊缁戝畾 + /// </summary> + public void UpdateBindingData() + { + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } /// <summary> @@ -97,45 +128,45 @@ return; } _allList.ForEach(x => x.UpdateProperty()); - this.hydroPipeViewModelBindingSource.ResetBindings(false); + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } /// <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; } vm.UpdateProperty(); - this.hydroPipeViewModelBindingSource.ResetBindings(false); + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } /// <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) @@ -143,7 +174,7 @@ vm.UpdateProperty(); } }); - this.hydroPipeViewModelBindingSource.ResetBindings(false); + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } /// <summary> @@ -155,15 +186,15 @@ { 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.hydroPipeViewModelBindingSource.ResetBindings(false); + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } } } @@ -191,8 +222,8 @@ { _allBindingList = _allBindingList.Where(x => !string.IsNullOrEmpty(x.ModelType) && x.ModelType.Contains(modelType)).ToList(); } - this.hydroPipeViewModelBindingSource.DataSource = _allBindingList; - this.hydroPipeViewModelBindingSource.ResetBindings(false); + this.hydroTranslationViewModelBindingSource.DataSource = _allBindingList; + this.hydroTranslationViewModelBindingSource.ResetBindings(false); } //閲嶇疆 @@ -210,23 +241,69 @@ Search(); if (_allBindingList == null || _allBindingList.Count < 1) { - XtraMessageBox.Show("鏃犲彲璁剧疆绠¢亾鏁版嵁"); + TipFormHelper.ShowWarn("鏃犳暟鎹紒"); return; } - var dlg = new SetHydroPipeDlg(); + var dlg = new SetHydroTranslationDlg(); dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList()); dlg.ReloadDataEvent += (list) => { - _allBindingList.ForEach(x => - { - x.UpdateProperty(); - }); - this.hydroPipeViewModelBindingSource.ResetBindings(false); - var allParterList = _allBindingList.Select(x => x.Vmo as HydroParterInfo).ToList(); - this.HydroChangedEvent?.Invoke(allParterList); + _allBindingList.ForEach(x => x.UpdateProperty()); + this.hydroTranslationViewModelBindingSource.ResetBindings(false); + 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(); } + + //鏌ヨ + private void btnSearch_Click(object sender, EventArgs e) + { + Search(); + } + + //閲嶇疆 + private void btnReset_Click(object sender, EventArgs e) + { + Reset(); + } + + //璁剧疆 + private void btnSet_Click(object sender, EventArgs e) + { + Set(); + } + + private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) + { + var row = this.gridView1.GetRow(e.RowHandle) as HydroTranslationViewModel; + if (row == null) + { + return; + } + + if (e.Column == this.colSet) + { + var dlg = new SetHydroTranslationDlg(); + dlg.SetBindingData(row.Vmo); + dlg.ReloadDataEvent += (list) => + { + row.UpdateProperty(); + this.gridView1.RefreshRow(e.RowHandle); + this.HydroChangedViewEvent?.Invoke(new List<HydroVisualViewModel>() { row }); + this.HydroChangedInfoEvent?.Invoke(new List<HydroVisualInfo>() { row.Vmo }); + }; + dlg.ShowDialog(); + } + else + { + this.HydroClickViewEvent?.Invoke(row); + this.HydroClickInfoEvent?.Invoke(row.Vmo); + } + } + /// <summary> /// 璁剧疆绠�鍗曟樉绀烘ā寮� @@ -328,33 +405,6 @@ this.colSet.Visible = true; } - private void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) - { - var row = this.gridView1.GetRow(e.RowHandle) as HydroPipeViewModel; - if (row == null) - { - return; - } - - if (e.Column == this.colSet) - { - var dlg = new SetHydroPipeDlg(); - dlg.SetBindingData(row.Vmo); - dlg.ReloadDataEvent += (list) => - { - row.UpdateProperty(); - this.gridView1.RefreshRow(e.RowHandle); - this.HydroChangedEvent?.Invoke(new List<Model.HydroParterInfo>() { row.Vmo }); - }; - dlg.ShowDialog(); - } - else - { - this.HydroClickEvent?.Invoke(row.Vmo); - } - } - - //鍒濆鍖栫娈电姸鎬� private void InitialLinkStatus() { @@ -366,5 +416,6 @@ this.imgCmbLinkStatus.Properties.EndUpdate(); } + } } -- Gitblit v1.9.3