日期:2014-05-19  浏览次数:21038 次

300分求解决drag and drop的问题,分不够还可能加
怎样实现两个程序间的drag   and   drop, 如我写了一个程序里面有一个Tree,我运行它两次,取A&B两个进程,我想从A程序的Treeview   拖拽到B程序中的Treeview中,我用下面的代码只能在A进程(或B进程)内的TreeView内拖拽,希望高手指点迷津。

                        void   trvLeftview_ItemDrag(object   sender,   ItemDragEventArgs   e)
                        {
                                if   (e.Button   ==   MouseButtons.Right)   return;     //判断是否是鼠标右键按动

                                this.trvLeftview.DoDragDrop(e.Item,   DragDropEffects.Move);
                        }

                        void   trvLeftview_DragEnter(object   sender,   DragEventArgs   e)
                        {

                                        e.Effect   =   DragDropEffects.Move;
                        }

                        void   trvLeftview_DragDrop(object   sender,   DragEventArgs   e)
                        {
                                TreeNode   dragNode   =   (TreeNode)(e.Data.GetData(typeof(TreeNode)));

                                System.Drawing.Point   Position   =   new   Point();
                                Position.X   =   e.X;
                                Position.Y   =   e.Y;
                                Position   =   ((TreeView)sender).PointToClient(Position);
                                TreeNode   targetNode   =   ((TreeView)sender).GetNodeAt(Position);

                                if   (dragNode   ==   null   ||   targetNode   ==   null)  
                                        return;
                        }


------解决方案--------------------
我不会,但您一个三角,哪有三百分啊??
------解决方案--------------------
不懂,帮顶
------解决方案--------------------
帮你up
------解决方案--