Shuxia Ning
2024-11-25 d4898c5d7e1bbbbba384a0e29f29c066d6f502a7
WinFrmUI/Yw.WinFrmUI.Hydro.Core/10-working/05-tree/HydroWorkingTreeCtrl.cs
@@ -21,6 +21,11 @@
        public event Action<HydroWorkingVmo> FocusedChangedEvent;
        /// <summary>
        /// 水力点击事件
        /// </summary>
        public event Action<HydroWorkingVmo> HydroClickEvent;
        /// <summary>
        /// 所有绑定列表
        /// </summary>
        private List<HydroWorkingTreeViewModel> _allBindingList = null;
@@ -38,6 +43,29 @@
            });
            this.treeList1.DataSource = _allBindingList;
            this.treeList1.ForceInitialize();
        }
        /// <summary>
        /// 选择
        /// </summary>
        public void Select(HydroWorkingVmo working)
        {
            var allNodeList = this.treeList1.GetNodeList();
            foreach (var node in allNodeList)
            {
                var vm = this.treeList1.GetDataRecordByNode(node) as HydroWorkingTreeViewModel;
                if (vm != null)
                {
                    if (vm.Vmo.ID == working.ID)
                    {
                        if (this.treeList1.FocusedNode != node)
                        {
                            this.treeList1.FocusedNode = node;
                        }
                        return;
                    }
                }
            }
        }
        /// <summary>
@@ -107,7 +135,6 @@
            set { this.bar1.Visible = value; }
        }
        //全部展开
        private void barBtnExpandAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
@@ -139,9 +166,15 @@
        private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e)
        {
            var vm = this.treeList1.GetDataRecordByNode(e.Node) as HydroWorkingTreeViewModel;
            this.FocusedChangedEvent?.Invoke(vm.Vmo);
            this.FocusedChangedEvent?.Invoke(vm?.Vmo);
        }
        //点击事件
        private void treeList1_RowClick(object sender, DevExpress.XtraTreeList.RowClickEventArgs e)
        {
            var vm = this.treeList1.GetDataRecordByNode(e.Node) as HydroWorkingTreeViewModel;
            this.HydroClickEvent?.Invoke(vm?.Vmo);
        }
    }