登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

【华软英创工作室】-潇湘客

QQ:1917141 E-Mail:dengzebo@163.com

 
 
 

日志

 
 
关于我

朝起晨风暮斜阳,为谁辛苦为谁忙? 夏雨梧桐秋棋声,待到何时待何人? 风飒飒兮木萧萧,思公子兮徒离忧。 山有木兮木有枝,心悦君兮君不知。

 
 

通过键盘方向键控制TreeView节点的移动  

2010-04-21 16:19:32|  分类: 程序源码 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

     #region "控制树节点移动,向左右下上"

        /// <summary>

        /// 通过Ctrl+键盘移动选定的树节点

        /// </summary>

        /// <param name="TreeView1">要编辑的TreeView控件</param>

        /// <param name="eKeys">The <see cref="System.Windows.Forms.KeyEventArgs"/>KeyEventArgs为按键事件提供数据</param>

        public void MoveSelectNode(TreeView TreeView1, KeyEventArgs eKeys)

        {

            try

            {

                if (TreeView1.SelectedNode == null)

                {

                    return;

                }

                try

                {

                    if (eKeys.KeyCode == Keys.Up && eKeys.Control == true)

                    {

                        TreeNode TN = new TreeNode();

                        TN = TreeView1.SelectedNode;

                        TreeNode TempNode = (TreeNode)TreeView1.SelectedNode.Clone();

                        if (TreeView1.SelectedNode.PrevNode == null)

                        {

                            return;

                        }

                        if (TN.Parent == null)

                        {

                            TreeView1.Nodes.Insert(TN.Index - 1, TempNode);

                        }

                        else

                        {

                            TN.Parent.Nodes.Insert(TN.Index - 1, TempNode);

                        }

                        TreeView1.SelectedNode.Remove();

                        TreeView1.SelectedNode = TempNode;

                    }

                    else if (eKeys.KeyCode == Keys.Down && eKeys.Control == true)

                    {

                        TreeNode TN = new TreeNode();

                        TN = TreeView1.SelectedNode;

                        TreeNode TempNode = (TreeNode)TreeView1.SelectedNode.Clone();

                        if (TreeView1.SelectedNode.NextNode == null)

                        {

                            return;

                        }

                        if (TN.Parent == null)

                        {

                            TreeView1.Nodes.Insert(TN.Index + 2, TempNode);

                        }

                        else

                        {

                            TN.Parent.Nodes.Insert(TN.Index + 2, TempNode);

                        }

                        TreeView1.SelectedNode.Remove();

                        TreeView1.SelectedNode = TempNode;

                    }

                    else if (eKeys.KeyCode == Keys.Left && eKeys.Control == true)

                    {

                        TreeNode TN = new TreeNode();

                        TN = TreeView1.SelectedNode;

                        TreeNode TempNode = (TreeNode)TreeView1.SelectedNode.Clone();

                        if (TreeView1.SelectedNode.Parent == null)

                        {

                            return;

                        }

                        else

                        {

                            if (TreeView1.SelectedNode.Parent.Parent == null)

                            {

                                TreeView1.Nodes.Add(TempNode);

                            }

                            else

                            {

                                TN.Parent.Parent.Nodes.Add(TempNode);

                            }

                        }

                        TN.Remove();

                        TreeView1.SelectedNode = TempNode;

                    }

                    else if (eKeys.KeyCode == Keys.Right && eKeys.Control == true)

                    {

                        TreeNode TN = new TreeNode();

                        TN = TreeView1.SelectedNode;

                        TreeNode TempNode = (TreeNode)TreeView1.SelectedNode.Clone();

                        if (TreeView1.SelectedNode.NextNode == null)

                        {

                            return;

                        }

                        TN.NextNode.Nodes.Insert(0, TempNode);

                        TN.Remove();

                        TreeView1.SelectedNode = TempNode;

                    }

                }

                catch

                {

                }

            }

            catch

            { }

        }

        #endregion

  评论这张
 
阅读(1611)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018