В моем проекте пользователь должен определить несколько путей. Нажав кнопку, откроется окно, в котором вы можете перетащить файл/папку из обозревателя Windows в это окно. Затем мое приложение примет этот путь и сохранит его.VB.NET Как перетащить файл из Windows Explorer в конкретную форму?
У меня есть основная форма, где находится кнопка на странице настроек. Это открывает новую форму 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, он работает. Почему это не работает в этом многообразном проекте и как я могу это исправить?
Проверьте этот вопрос. http://stackoverflow.com/questions/11686631/vb-net-drag-drop-and-get-file-path Надежда полезным. – Freelancer
На самом деле, я чувствую, что ваш вопрос является точным дубликатом этого. – Freelancer
Нет, это не так. У меня такой же код, но он не работает над моим проектом. Если я создам новый проект, он будет работать. Единственное отличие состоит в том, что у меня есть несколько форм в моем проекте. – Alexander