高软玩家

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1、 通过DragEnter事件获得被拖入窗口的“信息”(可以是若干文件,一些文字等等),在DragDrop事件中对“信息”进行解析。
2、接受拖放控件的AllowDrop属性必须设置成true;
3、必须在DragEnter事件中设置好要接受拖放的效果,默认为无效果。(所以单独写DragDrop事件是不会具有拖拽功能的)

 

TextBox  DragEnter事件(在用鼠标将某项拖动到该控件的工作区时发生)

    private void textBox2_DragEnter(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent(DataFormats.FileDrop))
            {
                e.Effect = DragDropEffects.Link;
                this.textBox2.Cursor = System.Windows.Forms.Cursors.Arrow;  //指定鼠标形状(更好看)  
            }
            else
            {
                e.Effect = DragDropEffects.None;
            }  
        }

DragDrop 在完成拖放操作时发生

 

 private void textBox2_DragDrop(object sender, DragEventArgs e)
        {
           string path = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();  
           textBox2.Text = path;  
           this.textBox2.Cursor = System.Windows.Forms.Cursors.IBeam; //还原鼠标形状  
        }

 

posted on 2017-09-11 15:31  高软玩家  阅读(308)  评论(0编辑  收藏  举报