在我的项目中,用户必须定义一些路径。通过单击按钮,将打开一个窗口,您可以在其中将文件/文件夹从 Windows 资源管理器拖放到该窗口。然后我的应用程序将采用该路径并存储它。
我有一个主表单,其中是设置页面的按钮。这将通过 form.show 打开新表单。在这个新表单中,我有另一个按钮。通过单击它,将打开另一个小表单,您可以在其中放置东西(form.show)。这就是事情变得棘手的地方。我无法进行拖放工作。
Public Class drag
Private Sub dragdrop_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.TopMost = True
Me.AllowDrop = True
End Sub
Private Sub drag_DragDrop(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragDrop
Dim theFiles() As String = CType(e.Data.GetData("FileDrop", True), String())
For Each theFile As String In theFiles
MsgBox(theFile)
Next
End Sub
Private Sub drag_DragEnter(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Copy
End If
End Sub
End Class
如果我创建新项目并将确切的代码粘贴到 form1,它就可以工作。为什么它不适用于这个多形式项目,我该如何解决?