對treeview節點的複製,貼上和出現右擊選單

2021-08-31 08:20:29 字數 1782 閱讀 3116

在寫專案的時候,我們都會在按鈕上去實現一些新增,修改等等的操作,有時候複製,貼上等大部門都是用按鈕的形式,如果是右擊往往這樣會讓使用者感覺到軟體的靈活性,因為使用者在使用作業系統的時候都習慣了右擊對資料進行複製,貼上等操作,所有在樹形節點上除了用按鈕的形式實現複製,貼上等功能外,我想選單上也能夠實現的話,會非常的好,能夠給使用者很好的體驗。

實現貼上功能**如下:

///

/// 實現貼上的功能

///

///

///

private void barbuttonitem貼上_itemclick(object sender, devexpress.xtrabars.itemclickeventargs e)

//如果目標節點為空或目標節點在外面

if (this.treeview1.selectednode == null || this.treeview1.selectednode == this.treeview1.nodes[0])

//如果目標節點是自己或自己的子節點

if (this.treeview1.selectednode == this.copynode || !isnode(copynode))

//新增節點

addnode(this.treeview1.selectednode, this.copynode);

//重新整理

createtree(this.treeview2, "all");

}///

/// 貼上子接點

///

///

///

public void addnode(treenode snode, treenode cnode)

//依次新增

for (int i = 0; i < cnode.nodes.count; i++)

}catch (system.exception e)

finally

}實現複製的功能:

///

/// 實現複製的功能

///

///

///

private void barbuttonitem複製_itemclick(object sender, devexpress.xtrabars.itemclickeventargs e)

//把當前節點的資訊賦值給乙個節點

this.copynode = this.treeview1.selectednode;

}上面就完成了在樹節點上對資料的複製,貼上了,然後我們在實現右擊功能,把上面的功能新增到事件中去:

///

/// 右擊事件

///

///

///

private void mousedown右擊事件(object sender, mouseeventargs e)

//選中這個節點

treeview1.selectednode = currentnode;}}

///

/// 右擊貼上事件

///

///

///

private void 貼上toolstripmenuitem_click(object sender, eventargs e)

///

/// 右擊複製事件

///

///

///

private void 複製toolstripmenuitem_click(object sender, eventargs e)

這樣程式就更加的完美了

動態新增TREEVIEW的節點

讀取資料庫中的資料讓其插入到treeview的節點中,這裡是從資料庫中讀取省和直轄市新增到父節點中然後讀取省下的縣市新增到父節點下,建立了兩張個表乙個省的表,乙個是縣市表 using system using system.data using system.configuration using ...

動態新增treeview的節點

動態新增treeview的節點 主要控制項 treeview,imagelist,button 注意 treeview1.imagelist imagelist1 private subbutton1 click byvalsenderassystem.object,byvaleassystem.e...

遍歷TreeView得到選中的節點

region 遞迴treeview,把所有被選中的節點id記錄到arraylist中 遞迴treeview,把所有被選中的節點id記錄到arraylist中 private void recursivetree treeview tree 遞迴treeview的節點,把所有被選中的節點id記錄到ar...