DragDrop ファイルでもフォルダでもVer

Dim fs As New List(Of String)
Private Sub Form1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
	If e.Data.GetDataPresent(DataFormats.FileDrop) Then 'コントロール内にドラッグされたとき実行される
		e.Effect = DragDropEffects.Copy 'ドラッグされたデータ形式を調べ、ファイルのときはコピーとする
	Else
		e.Effect = DragDropEffects.None 'ファイル以外は受け付けない
	End If
End Sub
Private Sub Form1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles Me.DragDrop
	'コントロール内にドロップされたとき実行される
	'ドロップされたすべてのファイル名を取得する
	Dim FileNames As String() = CType(e.Data.GetData(DataFormats.FileDrop, False), String())
	Dim files As String()
	Label2.Text = String.Empty
	Me.Refresh()
	For Each FName As String In FileNames 'フルパスがファイルかフォルダか判別する
		If GetAttr(FName) = FileAttribute.Directory Then 'フォルダなら
			files = System.IO.Directory.GetFiles(FName, "*.ai")
			For Each FileName As String In files
				ContAdd(FileName)
			Next
			files = System.IO.Directory.GetFiles(FName, "*.eps")
			For Each FileName As String In files
				ContAdd(FileName)
			Next
		Else 'ファイルなら
			Dim Exte As String = Path.GetExtension(FName)
			If Exte = ".ai" Or Exte = ".eps" Then
				ContAdd(FName)
			End If
		End If
	Next
	If fs.Count > 0 Then
		fs.Sort()
		ListBox1.Items.Clear()
		For Each aaa As String In fs
			ListBox1.Items.Add(Dir(aaa))
		Next
	End If

End Sub

Public Sub ContAdd(ByVal FName As String)
        If fs.Contains(FName) = False Then fs.Add(FName)
End Sub