C# 如何在Windows7上进行拖放操作

C# 如何在Windows7上进行拖放操作,c#,winforms,drag-and-drop,explorer,C#,Winforms,Drag And Drop,Explorer,我编写了一个小型C#表单应用程序,用于查看一些二进制文件数据。我希望能够将文件从windows资源管理器拖放到应用程序中,并相应地加载它们。我知道关于D&D有几个相关的问题,我已经按照他们的建议,以普通用户/管理员的身份运行我的应用程序,但我永远也无法举办拖放火灾活动 这里是我设置allow drop位的地方&将事件处理程序添加到控件(在InitializeComponent()中): 我可以在this.dataGridView1\u DragDrop中设置断点,但它永远不会触发。除此之外,当我

我编写了一个小型C#表单应用程序,用于查看一些二进制文件数据。我希望能够将文件从windows资源管理器拖放到应用程序中,并相应地加载它们。我知道关于D&D有几个相关的问题,我已经按照他们的建议,以普通用户/管理员的身份运行我的应用程序,但我永远也无法举办拖放火灾活动

这里是我设置allow drop位的地方&将事件处理程序添加到控件(在InitializeComponent()中):


我可以在this.dataGridView1\u DragDrop中设置断点,但它永远不会触发。除此之外,当我在应用程序上拖动文件时,鼠标图标始终是一个带分数的圆圈。我还尝试将拖放事件处理程序添加到表单中,并将其指向与数据网格视图相同的事件处理程序方法(并在表单上设置AllowDrop位)。这将导致相同的行为。我遗漏了什么?

您必须按照中的规定设置“DragEnter”事件的
e.Effect
属性

您必须按照中的规定设置“DragEnter”事件的
e.Effect
属性

您必须按照中的规定设置“DragEnter”事件的
e.Effect
属性

您必须按照中的规定设置“DragEnter”事件的
e.Effect
属性

别,没那么明显。别,没那么明显。别,没那么明显。别,没那么明显。别,没那么明显。
        this.dataGridView1.AllowDrop = true;
        this.dataGridView1.AllowUserToOrderColumns = true;
        this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
        this.dataGridView1.Location = new System.Drawing.Point(12, 33);
        this.dataGridView1.Name = "dataGridView1";
        this.dataGridView1.Size = new System.Drawing.Size(916, 119);
        this.dataGridView1.TabIndex = 0;
        this.dataGridView1.DragDrop += new System.Windows.Forms.DragEventHandler(this.dataGridView1_DragDrop);