本文提供倆種不需要手動添加編輯控制項方法。 方法一:創建新的右鍵菜單添加“執行選擇”按鈕,且抑制TreeList自帶菜單結果展示: 代碼: private void Form1_Load(object sender, EventArgs e) { CreateBarButtonItem(); } pr ...
本文提供倆種不需要手動添加編輯控制項方法。
方法一:創建新的右鍵菜單添加“執行選擇”按鈕,且抑制TreeList自帶菜單
結果展示:
代碼:
private void Form1_Load(object sender, EventArgs e) { CreateBarButtonItem(); } private void CreateBarButtonItem() { // 創建右鍵菜單 ContextMenuStrip contextMenuStrip = new ContextMenuStrip(); // 添加 "執行選擇" 菜單項 ToolStripMenuItem execSelectedItem = new ToolStripMenuItem("執行選擇"); execSelectedItem.Click += ExecSelectedItem_Click; ; contextMenuStrip.Items.Add(execSelectedItem); // 關聯右鍵菜單與 TreeList 控制項 treeList1.PopupMenuShowing += TreeList1_PopupMenuShowing; } private void TreeList1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) { // 禁用自帶的右鍵菜單 e.Allow = false; } private void ExecSelectedItem_Click(object sender, EventArgs e) { //處理“執行選擇”事件邏輯 }
方法二:在TreeList自帶菜單基礎上添加“執行選擇”按鈕
結果展示:
右鍵空節點
右鍵節點,保留自帶菜單功能
右鍵列標題,保留自帶菜單功能
代碼:
private void Form1_Load(object sender, EventArgs e) { treeList1.PopupMenuShowing += TreeList1_PopupMenuShowing;//自定義右鍵展示菜單 } private void TreeList1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e) { // 獲取右鍵菜單 if (e.Menu is TreeListMenu menu) { // 添加自定義按鈕 DXMenuItem execSelectedItem = new DXMenuItem("執行選擇"); execSelectedItem.Click += ExecSelectedItem_Click; // 將自定義按鈕插入到菜單的末尾 menu.Items.Add(execSelectedItem); } } private void ExecSelectedItem_Click(object sender, EventArgs e) { //處理“執行選擇”事件邏輯 }