[START CODE VB.NET]
Private Sub btnBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowse.Click
txtFilePath.Text = getFilePath()
End Sub
' Function to create a new thread
Public Function getFilePath() As String
Try
Dim pathname As String = Nothing
Dim FolderDlgThread As System.Threading.Thread = New System.Threading.Thread(AddressOf getFilePathThread)
FolderDlgThread.ApartmentState = Threading.ApartmentState.STA
FolderDlgThread.Start()
FolderDlgThread.Join()
pathname = dlgFolder.SelectedPath
Return pathname
Catch err As Exception
MsgBox(err.Message)
Return Nothing
End Try
End Function
<STAThread()> _
Public Sub getFilePathThread()
Try
Dim pathname As String = Nothing
dlgFolder.Site = Nothing ' dlgFolder is the folder browser control name
Dim stat As DialogResult = dlgFolder.ShowDialog() ' open the folder browser dialog
If stat = DialogResult.OK Then
pathname = dlgFolder.SelectedPath
End If
Catch err As Exception
MsgBox(err.Message)
End Try
End Sub
[END CODE VB.NET]