ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【c# winform】devexpress treeList右键菜单添加按钮 [打印本页]

作者: 科技颠覆者    时间: 2024-3-1 06:54
标题: 【c# winform】devexpress treeList右键菜单添加按钮
本文提供俩种不需要手动添加编辑控件方法。
方法一:创建新的右键菜单添加“执行选择”按钮,且抑制TreeList自带菜单
结果展示:

 代码: 
  1. private void Form1_Load(object sender, EventArgs e)
  2. {
  3.   CreateBarButtonItem();
  4. }
  5. private void CreateBarButtonItem() {
  6.   // 创建右键菜单
  7.   ContextMenuStrip contextMenuStrip = new ContextMenuStrip();
  8.   // 添加 "执行选择" 菜单项
  9.   ToolStripMenuItem execSelectedItem = new ToolStripMenuItem("执行选择");
  10.   execSelectedItem.Click += ExecSelectedItem_Click; ;
  11.   contextMenuStrip.Items.Add(execSelectedItem);
  12.   // 关联右键菜单与 TreeList 控件
  13.   treeList1.PopupMenuShowing += TreeList1_PopupMenuShowing;
  14. }
  15. private void TreeList1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
  16. {
  17.      // 禁用自带的右键菜单
  18.      e.Allow = false;
  19. }
  20. private void ExecSelectedItem_Click(object sender, EventArgs e)
  21. {
  22.   //处理“执行选择”事件逻辑
  23. }
复制代码
方法二:在TreeList自带菜单基础上添加“执行选择”按钮
结果展示: 

 右键空节点 

 右键节点,保留自带菜单功能  

 右键列标题,保留自带菜单功能‍  
代码: 
  1. private void Form1_Load(object sender, EventArgs e)
  2. {
  3.   treeList1.PopupMenuShowing += TreeList1_PopupMenuShowing;//自定义右键展示菜单
  4. }
  5. private void TreeList1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
  6. {
  7.   // 获取右键菜单
  8.   if (e.Menu is TreeListMenu menu)
  9.   {
  10.     // 添加自定义按钮
  11.     DXMenuItem execSelectedItem = new DXMenuItem("执行选择");
  12.     execSelectedItem.Click += ExecSelectedItem_Click;
  13.     // 将自定义按钮插入到菜单的末尾
  14.     menu.Items.Add(execSelectedItem);
  15.   }
  16. }
  17. private void ExecSelectedItem_Click(object sender, EventArgs e)
  18. {
  19.   //处理“执行选择”事件逻辑
  20. }  
复制代码
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4