0.屬性和方法
//屬性方法 advTree1.DragDropEnabled = !advTree1.DragDropEnabled;//控制是否可以拖動節點 advTree1.MultiSelect = !advTree1.MultiSelect;//控制節點是否可以多選 advTree1.ExpandButtonType = DevComponents.AdvTree.eExpandButtonType.Triangle;//展開節點前邊的圖標 三角形 advTree1.ExpandButtonType = DevComponents.AdvTree.eExpandButtonType.Ellipse;//圓形中間一個線 advTree1.ExpandButtonType = DevComponents.AdvTree.eExpandButtonType.Image;//展開下邊1的圖 折疊下邊0的圖 advTree1.ExpandImage = imageList1.Images[1]; advTree1.ExpandImageCollapse = imageList1.Images[0]; advTree1.ExpandButtonType = DevComponents.AdvTree.eExpandButtonType.Rectangle;//默認方塊形中間加一個線 advTree1.ExpandButtonSize = new Size(10, 10);//展開按鈕大小 默認8,8 advTree1.SelectionBoxStyle = DevComponents.AdvTree.eSelectionStyle.FullRowSelect;//選中一行
advTree.DragDropEnable=false; 禁止拖動 // advTree1.Nodes.Clear();//清空所有節點 advTree1.ExpandAll();//全部展開 advTree1.CollapseAll();//全部折疊 Node n = advTree1.SelectedNode.Copy();//復制先中節點 advTree1.SelectedNode.Remove();//移除節點 advTree1.Nodes.Add(n);//添加節點
1.對advTree操作都是在Nodes屬性基礎上的如:新建 一個Node並添加到tree中 node 前的圖片 展示
Node n = new Node();//節點下再加節點 像部門檔案等可遞歸實現 n.Text = "小張"; n.Nodes.Add(new Node("男")); n.Nodes.Add(new Node("18")); n.Nodes.Add(new Node("小張永遠18,你懂得")); n.Nodes.AddRange(new Node[] { new Node("漢"), new Node("有三個女朋友")});//集合增加 n.image=//圖片源 顯示圖片 n.ImageExpanded=//圖片源 節點展開時顯示的圖片 advTree1.Nodes.Add(n);
2.取選中節點的值
advTree1.SelectedNode.Text;
3.選中時節點 執行操作(SelectedIndexChanged)
private void AdvTree1_SelectedIndexChanged(object sender, EventArgs e) { //MessageBox.Show(advTree1.SelectedNode.Text); //層級 if (advTree1.SelectedNode.Level == 0) { //語句1 } else if (advTree1.SelectedNode.Level ==1) { //語句2 } }
4.拖拽 各種限制都在BeforeNodeDrop設置 如:我只能在層級1級上相互拖動 不可去0級2級
private void AdvTree1_BeforeNodeDrop(object sender, TreeDragDropEventArgs e) { Node node = e.Node; Node pNode = e.NewParentNode; if (pNode==null) { MessageBox.Show("不能改變層級關系"); e.Cancel = true; return; } if (pNode.Level != 0) { MessageBox.Show("不能改變層級關系"); e.Cancel = true; return; } }
