lixiaojun
2025-01-07 db26311246d1c1cecadf4a22dc44ffa570ee40f2
WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/00-core/HydroVisualListCtrl.cs
@@ -11,7 +11,6 @@
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                {
                    ctrl.ShowFindPanel = false;
                    ctrl.HydroClickInfoEvent += (visual) =>
                    {
                        this.HydroClickInfoEvent?.Invoke(visual);
@@ -65,15 +64,41 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo)
        public void SetBindingData
            (
                Yw.Model.HydroModelInfo hydroInfo,
                HydroChangeHelper changeHelper = null,
                HydroPropStatusHelper propStatusHelper = null
            )
        {
            this.SetBindingData(hydroInfo, null);
            this.SetBindingData(hydroInfo, allCalcuResultVisualDict: null, changeHelper, propStatusHelper);
        }
        /// <summary>
        /// 绑定数据
        /// </summary>
        public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List<HydroCalcuResult> allCalcuResultList)
        public void SetBindingData
            (
                Yw.Model.HydroModelInfo hydroInfo,
                List<HydroCalcuVisualResult> allCalcuResultList,
                HydroChangeHelper changeHelper = null,
                HydroPropStatusHelper propStatusHelper = null
            )
        {
            var allCalcuResultVisualDict = allCalcuResultList?.ToDictionary(x => x.Code);
            SetBindingData(hydroInfo, allCalcuResultVisualDict, changeHelper, propStatusHelper);
        }
        /// <summary>
        /// 绑定数据
        /// </summary>
        public void SetBindingData
            (
                Yw.Model.HydroModelInfo hydroInfo,
                Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict,
                HydroChangeHelper changeHelper = null,
                HydroPropStatusHelper propStatusHelper = null
            )
        {
            if (hydroInfo == null)
            {
@@ -83,7 +108,7 @@
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                {
                    ctrl.SetBindingData(hydroInfo, allCalcuResultList);
                    ctrl.SetBindingData(hydroInfo, allCalcuResultVisualDict, changeHelper, propStatusHelper);
                    if (HidePageWhenListIsNull)
                    {
                        if (!ctrl.HasHydroList)
@@ -98,7 +123,12 @@
        /// <summary>
        /// 绑定数据
        /// </summary>
        public void SetBindingData(List<HydroVisualViewModel> allVisualViewModelList)
        public void SetBindingData
            (
                List<HydroVisualViewModel> allVisualViewModelList,
                HydroChangeHelper changeHelper = null,
                HydroPropStatusHelper propStatusHelper = null
            )
        {
            if (allVisualViewModelList == null || allVisualViewModelList.Count < 1)
            {
@@ -108,7 +138,7 @@
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                {
                    ctrl.SetBindingData(allVisualViewModelList);
                    ctrl.SetBindingData(allVisualViewModelList, changeHelper, propStatusHelper);
                    if (HidePageWhenListIsNull)
                    {
                        if (!ctrl.HasHydroList)
@@ -199,7 +229,7 @@
        /// <summary>
        /// 更新计算属性
        /// </summary>
        public void UpdateCalcuProperty(List<HydroCalcuResult> allCalcuResultList)
        public void UpdateCalcuProperty(List<HydroCalcuVisualResult> allCalcuResultList)
        {
            if (allCalcuResultList == null || allCalcuResultList.Count < 1)
            {
@@ -218,15 +248,39 @@
        }
        /// <summary>
        /// 更新计算属性
        /// </summary>
        public void UpdateCalcuProperty(Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict)
        {
            if (allCalcuResultVisualDict == null || allCalcuResultVisualDict.Count < 1)
            {
                return;
            }
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.PageVisible)
                {
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.UpdateCalcuProperty(allCalcuResultVisualDict);
                    }
                }
            }
        }
        /// <summary>
        /// 设置简单视图
        /// </summary>
        public void SetSimpleView()
        {
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                if (page.PageVisible)
                {
                    ctrl.SetSimpleView();
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.SetSimpleView();
                    }
                }
            }
        }
@@ -238,9 +292,12 @@
        {
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                if (page.PageVisible)
                {
                    ctrl.SetNormalView();
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.SetNormalView();
                    }
                }
            }
        }
@@ -252,23 +309,46 @@
        {
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                if (page.PageVisible)
                {
                    ctrl.SetCalcuView();
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.SetCalcuView();
                    }
                }
            }
        }
        /// <summary>
        /// 设置批量设置视图
        /// 设置批量视图
        /// </summary>
        public void SetBulkSetView()
        public void SetBulkView()
        {
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.Controls[0] is IHydroVisualList ctrl)
                if (page.PageVisible)
                {
                    ctrl.SetBulkSetView();
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.SetBulkView();
                    }
                }
            }
        }
        /// <summary>
        /// 设置结果视图
        /// </summary>
        public void SetResultView()
        {
            foreach (var page in this.tabPane1.Pages)
            {
                if (page.PageVisible)
                {
                    if (page.Controls[0] is IHydroVisualList ctrl)
                    {
                        ctrl.SetResultView();
                    }
                }
            }
        }