Whenever you need to allow a user to open a particular file without forcing the user to type the full path and file name, you can use the OpenFileDialog class. OpenFileDialog has a number of properties and methods that make it a flexible way to get users to pick a file. In this tip, I present an example that shows how you can use OpenFileDialog in VB.NET.
Put OpenFileDialog to use
It's very easy to use the OpenFileDialog class, which you will find under the Dialogs section of the toolbox. To add the control to your form, double-click it, and the component will appear below the form as in Figure A. Figure AFor my example, I will also add a textbox and a command button to the form. To do so, change the text property of the command button to Open File and add the following code to the button's click event and to the FileOK event of the OpenFileDialog box:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickPress [F5] to debug, and your form will look like Figure B. Figure BOpenFileDialog1.Title = "Please Select a File"
OpenFileDialog1.InitialDirectory = "C:temp"
OpenFileDialog1.ShowDialog()
End Sub
Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
Dim strm As System.IO.Stream
strm = OpenFileDialog1.OpenFile()
TextBox1.Text = OpenFileDialog1.FileName.ToString()
If Not (strm Is Nothing) Then
'insert code to read the file data
strm.Close()
MessageBox.Show("file closed")
End If
End Sub
Notes about the example
I begin by setting the Title property of the OpenFileDialog box. Then, I set the initial directory that will open the first time the dialog box opens up. (The user can change it to any directory in run time.) I open the OpenFileDialog1 by using its ShowDialog method. After the user selects the file, I set the Text property of the textbox control to the file name selected in the OpenFileDialog with the help of the OpenFileDialog's FileName property. I open the file that the user selected and then close it.
You can use the functionality provided here to open the selected file or to store the name of the file that was selected, depending on the purpose of your particular application.
Irina Medvinskaya has been involved in technology since 1996. She has an MBA from Pace University and works as a project manager at Citigroup.
----------------------------------------------------------------------------------------
Get Visual Basic tips in your inboxAdvance your scripting skills to the next level with TechRepublic's free Visual Basic newsletter, delivered each Friday. Automatically subscribe today!