tangxu
2024-12-24 91105b77c916d06dd30380e20594e29f85eae3da
WinFrmUI/DPumpHydr.WinFrmUI.Volute/StepInfo/StepTreeDockPanel.cs
@@ -30,17 +30,17 @@
        //出水设计
        private readonly string Group_Name_Outflow = "Outflow";
        private readonly int Group_ID_Outflow = -3;
        public readonly long Step_ID_Outflow_Style = 31;
        public readonly long Step_ID_Outflow_Dim = 32;
        public readonly long Step_ID_Outflow_Style = 32;
        public readonly long Step_ID_Outflow_Type = 31;
        public readonly long Step_ID_jiahout = 33;
        //
        private List<DPumpHydr.WinFrmUI.Base.TreeStepNode> _allStepNodes = null;
        private List<DPumpHydr.WinFrmUI.Base.StepTreeNodePara> _allStepNodes = null;
        /// <summary>
        /// 步骤节点选择改变前后事件
        /// </summary>
        public event Func<TreeStepNode, TreeStepNode, bool> BeforeSelectedNodeChangedEvent;
        public event Func<TreeStepNode, TreeStepNode, bool> AfterSelectedNodeChangedEvent;
        public event Func<StepTreeNodePara, StepTreeNodePara, bool> BeforeSelectedNodeChangedEvent;
        public event Func<StepTreeNodePara, StepTreeNodePara, bool> AfterSelectedNodeChangedEvent;
        public long PrevStepID
@@ -121,10 +121,10 @@
        /// </summary>
        public void InitialStepNodes()
        {
            _allStepNodes = new List<DPumpHydr.WinFrmUI.Base.TreeStepNode>();
            _allStepNodes = new List<DPumpHydr.WinFrmUI.Base.StepTreeNodePara>();
            #region 基础信息/几何参数
            var stepGroup_BaseInfo = new DPumpHydr.WinFrmUI.Base.TreeStepNode();
            var stepGroup_BaseInfo = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara();
            stepGroup_BaseInfo.AllowSelect = false; 
            stepGroup_BaseInfo.Caption = "基础信息";
            stepGroup_BaseInfo.Name = Group_Name_Base_Info;
@@ -132,19 +132,20 @@
            stepGroup_BaseInfo.ParentID = 0;
            _allStepNodes.Add(stepGroup_BaseInfo);
            var step欢迎使用 = new DPumpHydr.WinFrmUI.Base.TreeStepNode();
            var step欢迎使用 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara();
            step欢迎使用.AllowSelect = false ; 
            step欢迎使用.Caption = "欢迎使用";
            step欢迎使用.Name = "StepHelp";
            step欢迎使用.ID = Step_ID_Introduce;
            step欢迎使用.ParentID = Group_ID_Base_Info;
            step欢迎使用.SpecImage = DPumpHydr.WinFrmUI.Volute.Properties.Resources.Smile16;
            _allStepNodes.Add(step欢迎使用);
            var step基础信息 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var step基础信息 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step基础信息.AllowSelect = true; 
            step基础信息.Caption = "第一步:基础信息";
@@ -153,10 +154,10 @@
            step基础信息.ParentID = Group_ID_Base_Info;
            _allStepNodes.Add(step基础信息);
            var step几何参数 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var step几何参数 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step几何参数.AllowSelect = true; 
            step几何参数.Caption = "第二步:几何参数";
@@ -169,10 +170,10 @@
            #region 断面设计(1-8)
            var stepGroup_CoverPlate = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var stepGroup_CoverPlate = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            stepGroup_CoverPlate.AllowSelect = false;
            stepGroup_CoverPlate.Caption = "断面设计";
@@ -182,10 +183,10 @@
            _allStepNodes.Add(stepGroup_CoverPlate);
            var step断面基本信息 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var step断面基本信息 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step断面基本信息.AllowSelect = true   ;
            step断面基本信息.Caption = string.Format("{0}:{1}",
@@ -197,24 +198,25 @@
            _allStepNodes.Add(step断面基本信息);
            var stepSetct18 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var stepSetct18 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            stepSetct18.AllowSelect = false ;
            stepSetct18.Caption = "第四步: 第1-8断面";
            stepSetct18.Name = "TreeStepNode" + Step_ID_Section18_Grp;
            stepSetct18.ID = Step_ID_Section18_Grp; 
            stepSetct18.ParentID = Group_ID_Section18;
            stepSetct18.SpecImage = DPumpHydr.WinFrmUI.Volute.Properties.Resources.Sect16;
            _allStepNodes.Add(stepSetct18);
 
            for(int i = 8; i >= 1; i--)
            {
                var stepSetct0 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
                var stepSetct0 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
                {
                    ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                    DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                    ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                    DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
                };
                stepSetct0.AllowSelect = true;
                stepSetct0.Caption = string.Format("第{0}断面",i);
@@ -228,10 +230,10 @@
            #region 出水体
            var stepGroup_出水体 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var stepGroup_出水体 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            stepGroup_出水体.AllowSelect = false;
            stepGroup_出水体.Caption = "出水体设计";
@@ -241,34 +243,50 @@
            _allStepNodes.Add(stepGroup_出水体);
            var step出水体类型 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var step出水体尺寸 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step出水体尺寸.AllowSelect = true;
            step出水体尺寸.Caption = " 第五步:出水体类型";
            step出水体尺寸.Name = "TreeStepNode" + Step_ID_Outflow_Type;
            step出水体尺寸.ID = Step_ID_Outflow_Type;
            step出水体尺寸.ParentID = Group_ID_Outflow;
            _allStepNodes.Add(step出水体尺寸);
            var step出水体类型 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step出水体类型.AllowSelect = true;
            step出水体类型.Caption = "第五步:出水体类型";
            step出水体类型.Caption = "第六步:出水体尺寸";
            step出水体类型.Name = "TreeStepNode" + Step_ID_Outflow_Style;
            step出水体类型.ID = Step_ID_Outflow_Style; 
            step出水体类型.ParentID = Group_ID_Outflow;
            _allStepNodes.Add(step出水体类型);
            var step出水体尺寸 = new DPumpHydr.WinFrmUI.Base.TreeStepNode()
            var step加厚 = new DPumpHydr.WinFrmUI.Base.StepTreeNodePara()
            {
                ProgressState = WinFrmUI.Base.TreeStepNode.eProgressState.未完成,
                DataState = WinFrmUI.Base.TreeStepNode.eDataState.未知
                ProgressState = WinFrmUI.Base.StepTreeNodePara.eProgressState.未完成,
                DataState = WinFrmUI.Base.StepTreeNodePara.eDataState.未知
            };
            step出水体尺寸.AllowSelect = true;
            step出水体尺寸.Caption = "第六步:出水体尺寸";
            step出水体尺寸.Name = "TreeStepNode" + Step_ID_Outflow_Dim;
            step出水体尺寸.ID = Step_ID_Outflow_Dim;
            step出水体尺寸.ParentID = Group_ID_Outflow;
            _allStepNodes.Add(step出水体尺寸);
            step加厚.AllowSelect = true;
            step加厚.Caption = "第七步:水体加厚";
            step加厚.Name = "TreeStepNode" + Step_ID_jiahout;
            step加厚.ID = Step_ID_jiahout;
            step加厚.ParentID = Group_ID_Outflow;
            _allStepNodes.Add(step加厚);
            #endregion
            //
            this._currentStepID = Step_ID_Hdr_Base_Info;
@@ -282,7 +300,7 @@
            this._currentStepID = StepNodeID;
            this.stepTreeCtrl1.SetFocusedNode(StepNodeID);
        }
        public void SetStepSource(List<TreeStepNode> steps, long ID)
        public void SetStepSource(List<StepTreeNodePara> steps, long ID)
        {
            if(ID > 0)
            {