精华内容
下载资源
问答
  • C#Tree View右键菜单,树节点编辑,增加节点,删除节点,复制粘贴节点
  • WPF MVVM模式下TreeView右键选中项,右键菜单 博客地址:http://www.cnblogs.com/xcong/
  • C# TreeView右键菜单

    2014-02-17 13:18:44
    C# TreeView右键菜单简单例子 在界面上要拖个contextMenuStrip控件并将TREEVIEW的和它绑定
  • C# TreeView 右键菜单

    2019-10-02 04:40:12
    方法一: 在winform中,添加一个contextMenuStrip1,设置TreeView的属性ContextMenuStrip为contextMenuStrip1,并为这个contextMenuStrip1添加几个菜单项,点击每个菜单项,实现其click事件,...//右键菜单 priva...

    方法一:

    在winform中,添加一个contextMenuStrip1,设置TreeView的属性ContextMenuStrip为contextMenuStrip1,并为这个contextMenuStrip1添加几个菜单项,点击每个菜单项,实现其click事件,然后添加treeivew的nodemouseclick事件,类似如下代码:

    //右键菜单
           private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                if (e.Button != MouseButtons.Right) return;
                if (e.Node.Parent == null || e.Node == null) return;
                treeView1.SelectedNode = e.Node;
                contextMenuStrip1.Show(tv_Roots, e.X, e.Y);
            }
    
      void contextMenuStripItem_Click(object sender, EventArgs e)//编辑飞行段
        {
        }
     
     

    方法二:不同节点对应不同的右键菜单(摘自http://www.cnblogs.com/imihiroblog/archive/2012/06/02/2531949.html)

    private void tvOneRoot_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                if (e.Button != MouseButtons.Right) return;
                if (e.Node == null) return; //无节点
                if (e.Node.Level == 0) return;
                int nodeType = GetNodeTypeByGuid(e.Node.Name);
                tvOneRoot.SelectedNode = e.Node;
                InitcmsOneRout(nodeType);
                cmsOneRout.Show(tvOneRoot, e.X, e.Y);
            }
    
            /// <summary>
            /// 初始化cmsOneRoot 从nodetype
            /// </summary>
            /// <param name="nodetype"></param>
            private void InitcmsOneRout(int nodetype)
            {
                cmsOneRout = new ContextMenuStrip();
                if (nodetype == -1)
                {
                    ToolStripMenuItem tmiEditRoutStation = new ToolStripMenuItem("编辑飞行站点");
                    tmiEditRoutStation.Click += new EventHandler(tmiEditRoutStation_Click);
                    cmsOneRout.Items.Add(tmiEditRoutStation);
                    ToolStripMenuItem tmiMoveRouteStation = new ToolStripMenuItem("更改位置");
                    tmiMoveRouteStation.Click += new EventHandler(tmiMoveRouteStation_Click);
                    cmsOneRout.Items.Add(tmiMoveRouteStation);
                    ToolStripMenuItem tmiDeleRouteStation = new ToolStripMenuItem("删除飞行站点");
                    tmiDeleRouteStation.Click += new EventHandler(tmiDeleRouteStation_Click);
                    cmsOneRout.Items.Add(tmiDeleRouteStation);
                }
                else if (nodetype == 0)
                {
                    ToolStripMenuItem tmiEditRout = new ToolStripMenuItem("编辑飞行段属性");
                    tmiEditRout.Click += new EventHandler(tmiEditRout_Click);
                    cmsOneRout.Items.Add(tmiEditRout);
                    ToolStripMenuItem tmiDeleteRout = new ToolStripMenuItem("删除飞行段");
                    tmiDeleteRout.Click += new EventHandler(tmiDeleteRout_Click);
                    cmsOneRout.Items.Add(tmiDeleteRout);
                }
                else if (nodetype == 1)
                {
     
                }
                else if (nodetype == 2)
                {
    
                }
                else
                {
     
                }
    
            }
    
    void tmiEditRout_Click(object sender, EventArgs e)//编辑飞行段
            {
                string routId = tvOneRoot.SelectedNode.Name;
                RouteParameter rp = GetRouteParaByGuid(routId);
                FrmPointProperty frm = new FrmPointProperty(rp, 0, 1);
                frm.OnRoutInfoUpdated += new FrmPointProperty.DelegateRouteInfoUpdated(frm_OnRoutInfoUpdated);
                frm.ShowDialog();
            }

     

    转载于:https://www.cnblogs.com/ttssrs/p/4361969.html

    展开全文
  • 判断你的TreeNode的Level,根据Level的不同设置不同的右键菜单,通常触发的是鼠标点击事件 myTreeView.MouseClick += new MouseEventHandler(myTreeView_MouseClick); void myTreeView_MouseClick(object sender...
    判断你的TreeNode的Level,根据Level的不同设置不同的右键菜单,通常触发的是鼠标点击事件
    myTreeView.MouseClick += new MouseEventHandler(myTreeView_MouseClick);
    void myTreeView_MouseClick(object sender, MouseEventArgs e)
    {
    myTreeView.ContextMenuStrip = null;
    TreeNode selectNode = myTreeView.GetNodeAt(e.X, e.Y);
    if (selectNode.Level == 0)
    {
    myTreeView.ContextMenuStrip = 你的ContextMenuStrip_1
    }
    else if (selectNode.Level == 1)
    {
    myTreeView.ContextMenuStrip = 你的ContextMenuStrip_2
    }
    //... ...
    }

    转载于:https://www.cnblogs.com/zhangpengshou/archive/2008/11/16/1334377.html

    展开全文
  • TreeView Grid.Row="0" Height="401" HorizontalAlignment="Left" Margin="12,0,0,0" Name="treeView1" VerticalAlignment="Top" Width="182&...

       xaml代码:

           <TreeView Grid.Row="0" Height="401" HorizontalAlignment="Left" Margin="12,0,0,0" Name="treeView1" VerticalAlignment="Top" Width="182">
                <TreeViewItem Header="哈哈"   >
                    <TreeViewItem Header="呵呵"/>
                    <TreeViewItem Header="嘿嘿" />
                    <TreeViewItem Header="哈哈哈哈"   />
                </TreeViewItem>
                <TreeViewItem Header="呵呵0">
                    <TreeViewItem Header="呵呵呵呵1"  />
                    <TreeViewItem Header="呵呵呵呵呵呵2"  />
                </TreeViewItem>
                <TreeView.ContextMenu>
                    <ContextMenu>
                        <MenuItem Header="点我" Name="miClickMe" />
                        <MenuItem Header="别点我" Name="miDontClickMe"/>
                    </ContextMenu>
                </TreeView.ContextMenu>
                <i:Interaction.Triggers>
                    <i:EventTrigger EventName="MouseMove">
                        <i:InvokeCommandAction Command="{Binding SelectTreeNodeCommand}" CommandParameter="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=local:Window1}}"/>
                    </i:EventTrigger>
                </i:Interaction.Triggers>
            </TreeView>

     

     

     

    ViewModel代码:

      public ICommand SelectTreeNodeCommand
            {
                get
                {
                    return new DelegateCommand<object>((x) =>
                    {
                        if (x == null) { return; }
                        (x as Window1).MouseRightButtonDown +=  ViewModel_MouseRightButtonDown;
                    });
                }
            }

            private void  ViewModel_MouseRightButtonDown(object sender, RoutedEventArgs e)
            {
                var treeViewItem = VisualUpwardSearch<TreeViewItem>(e.OriginalSource as DependencyObject) as TreeViewItem;
                if (treeViewItem != null)
                {
                    treeViewItem.Focus();
                }
            }

            private static DependencyObject VisualUpwardSearch<M>(DependencyObject source)
            {
                while (source != null && source.GetType() != typeof(M))
                {
                    if (source is System.Windows.Media.Visual || source is System.Windows.Media.Media3D.Visual3D)
                        source = System.Windows.Media.VisualTreeHelper.GetParent(source);
                    else
                        source = LogicalTreeHelper.GetParent(source);
                }
                return source;
            }

     

    参考链接:

    https://www.cnblogs.com/xcong/p/3712898.html

    展开全文
  • TreeView 通过右键菜单 实现添加,删除,修改等操作 不会弹出其他窗体 全部通过TreeView本身的功能实现 里面只有一些类 最近发现有时会出现错误 但是还是可以参考一下
  • ASP.NET TreeView右键菜单可以与后台交互 请看Default.aspx页面,在断点可以看到调用后台方法protected void LinkButton7_Click(object sender, EventArgs e) { Label1.Text = TreeView1.SelectedNode.Text; }
  • JavaFX+Jfoenix 学习笔记系列文章的JavaFX+Jfoenix 学习笔记(五)--ContextMenu右键菜单源码
  • TreeView 右键菜单

    2021-12-31 17:25:53
    //定义一个全局cms ContextMenuStrip cms; private void treeDoorWay_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { if (e.Button != MouseButtons.Right) ...//判断是不是右键 if (e....
            //树节点击事件 
            //定义一个全局cms
            ContextMenuStrip cms;
            private void treeDoorWay_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                if (e.Button != MouseButtons.Right) return;//判断是不是右键
                if (e.Node == null) return; //无节点
                
                if (e.Node.Tag is DevGroup)//判断节点类型(根据自己需求判断)
                {
                    Initcms();
                    cms.Show(treeDoorWay,e.X,e.Y);
                }            
            }
            /// <summary>
            /// 初始化cms
            /// </summary>
            /// <param name="nodetype"></param>
           
            private void Initcms()
            {
                cms = new ContextMenuStrip();
               
                ToolStripMenuItem tmiEditRoutStation = new ToolStripMenuItem("开门");
                tmiEditRoutStation.Click += new EventHandler(tmiOpenDoor_Click);
                cmsOneRout.Items.Add(tmiEditRoutStation);
                ToolStripMenuItem tmiMoveRouteStation = new ToolStripMenuItem("常开");
                tmiMoveRouteStation.Click += new EventHandler(tmiNormalOpenDoor_Click);
                cmsOneRout.Items.Add(tmiMoveRouteStation);
                ToolStripMenuItem tmiDeleRouteStation = new ToolStripMenuItem("常闭");
                tmiDeleRouteStation.Click += new EventHandler(tmiNormalCloseDoor_Click);
                cmsOneRout.Items.Add(tmiDeleRouteStation);
                           
            }
    
            /// <summary>
            /// 远程开门
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            void tmiOpenDoor_Click(object sender, EventArgs e)
            {
               //逻辑处理
            }

    展开全文
  • 试过用复合控件包含treeview控件,但是失败,这次在右键菜单调用tree的回发js成功可以在页面后台绑定被编辑的节点,后台3个函数都可以编辑用c#传的参数e.mynode就是右键菜单的选中的节点
  • C# treeview右键菜单 设置技巧

    千次阅读 2015-06-01 17:14:40
    //在NodeMouseClick事件中 再将cms设定成treeview的cms. 这样点空,不会出现右键菜单.   //右键菜单  private void tv_Roots_NodeMouseClick(ob
  • 级别名称都存在SQL数据库有三个字段(自动增长ID、父级ID、节点名称) 数据库文件都有,另外怕个别附加不上数据,所以创建数据库、表代码...通过不同的阶级 右键显示不同的菜单。可以无限增至下级 无限制。可扩展性强。
  • c# TreeView添加右键快键菜单有两种方法,需要的朋友可以参考一下
  • WPF TreeView1 双击新增节点 到TreeView2中,选中TreeView2子节点 右键删除子节点
  • //设置treeView支持右键弹出菜单 connect(this,SIGNAL(customContextMenuRequested(const QPoint &)),this, SLOT(slotCustomContextMenu(const QPoint &))); //连接点击右键信号与槽函数 槽函数
  • 最近使用到Treeview,需要添加一个功能,右键菜单。 他默认的clicked以及其他信号都不支持右键。Treeview的源码里面没有添加。 点击左键的时候,Treeview会选中那一行,如果添加右键,没有对应的函数和属性来选择...
  • WPF中TreeView设置右键菜单

    千次阅读 2019-07-10 16:34:16
    但是有时候过多的右键菜单功能又容易导致用户的误操作,下面讲解给TreeView设置右键菜单,首先在xaml文件中设置一棵树: 1、最直观的方式是直接在页面上创建ContextMenu,并在页面初始化时绑定点击事件: ...
  • ASPNET+TreeView右键菜单可以与后台交互 京华志&精华志出品 分享资源 C# ASP.NET SQL DBA 源码
  • (1)要向窗体添加一个TreeView控件(2)再添加一个ContextMenuStrip控件;(3)就要给TreeView添加一个MouseDown事件,代码如下: private void treeView1_MouseDown(object sender, MouseEventArgs e) { if (e.Button...
  • 删除节点比新增节点简单很多,主要是判断要删除的节点有没有兄弟...首先定义一个右键菜单 XAML: <!--定义一个右键菜单控件--> <UserControl.Resources> <ContextMenu x:Key="cmButton"> ...
  • treeView右键实现节点的增减删改,添加右键菜单并选中节点,即可对节点进行编辑,可以增加兄弟节点、子节点。
  • C#TreeView窗体版点击右键弹出菜单+直接修改名称+新建节点。与之前写的有所区别。可以直接在节点上进行修改!
  • 一个简单的 JS .net treeview右键菜单
  • 在对TreeView操作时免不了要有增删,这里加入右键菜单复制、粘贴、删除的功能,效果如下: 1、添加全局变量 private TreeViewNode copyNode;//所复制的节点数据 2、在TreeView控件中加入右键菜单复制、粘贴、...
  • 为ASP.NET的TreeView控件添加右键菜单,一些不错的文章和例子,有时间翻译一下 Based on my exprience, use a DIV as context menu is more suitable for your scenario, and there has some good articles talk ...
  • 有时候我们需要在...最基本的思路是,在TreeView右键点击的事件发生时,我们遍历它所有的Item,包括子Item,获取Item所对应的TreeViewItem控件的边界Rect,然后调用Rect的Contains方法判断鼠标是否在该范围内。
  • TREEVIEW右键菜单示例

    2008-06-03 13:31:35
    在 Form1 上拖一个 TreeView 控件,然后参考一下代码: unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, ComCtrls; type TF...
  • 你们一半回答了自己的问题.刚刚对我的代码进行了编码和测试,因此在此处发布我的解决方案代码段并没有什么坏处.def init(self):"""initialise dialog"""# Button-3 is right click on windowsself.tree.bind("", self...
  • 实在找不到好的中文教程,我决定自己将平时工作中用的时候...Node Context Menus( 带右键菜单的Tree) 有两个重要点 一个是 右键目录栏 一个是TreeView 右键目录栏: <ComponentArt:Menu id="rightMem...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,866
精华内容 1,146
关键字:

treeview右键菜单