天天看點

在DevExpress的treelist控件節點上實作右鍵彈出菜單項

    之前一直用vs中自帶的treeview控件,最近由于項目需要,接觸了一下DevExpress的treelist控件,感覺很棒棒哒!!!

其中節點上實作右鍵彈出菜單項的這個功能在網上搜尋了一下,感覺說得不太詳細,現在把自己總結的方法貼出來。

    使用這一控件之前先要進行引入

using DevExpress.XtraTreeList;
using DevExpress.XtraTreeList.Nodes;
           

    然後

private void treeList1_MouseDown(object sender, MouseEventArgs e)
        {
            
            if (e.Button == MouseButtons.Right)
            {
                treeList1.ContextMenuStrip = null;
                TreeListHitInfo hitInfo = treeList1.CalcHitInfo(new Point(e.X, e.Y));
                TreeListNode node = hitInfo.Node;
                treeList1.FocusedNode = node;
                if (node != null)
                {
                    if(node.Level==2)
                        treeList1.ContextMenuStrip = contextMenuStrip1;
                    if (node.Level == 3)
                        treeList1.ContextMenuStrip = contextMenuStrip2;
                }
            }
        }
           

    就OK啦!!!