Lors du premier démarrage de mon application, je dois spécifier un chemin pour y enregistrer certains fichiers. Mais dans le dialogue de fichier ouvert, il me semble que je dois sélectionner un fichier à ouvrir. Comment puis-je simplement spécifier un dossier sans ouvrir un fichier comme C:\config \
Voici mon code
If apppath = "" Then
Dim fd As OpenFileDialog = New OpenFileDialog()
fd.Title = "Select Application Configeration Files Path"
fd.InitialDirectory = "C:\"
fd.Filter = "All files (*.*)|*.*|All files (*.*)|*.*"
fd.FilterIndex = 2
fd.RestoreDirectory = True
If fd.ShowDialog() = DialogResult.OK Then
apppath = fd.FileName
End If
My.Computer.FileSystem.WriteAllText(apppath & "apppath.txt", apppath, False)
End If
Je dois sélectionner un fichier pour que cela fonctionne, mais je veux simplement sélectionner un dossier. Alors, quelle est la solution?
Vous souhaitez utiliser la classe FolderBrowserDialog
au lieu de la classe OpenFileDialog
. Vous pouvez trouver plus d'informations à ce sujet ici:
http://msdn.Microsoft.com/en-us/library/system.windows.forms.folderbrowserdialog(v=vs.110).aspx
Par exemple, vous pouvez faire ceci:
If apppath = "" Then
Dim dialog As New FolderBrowserDialog()
dialog.RootFolder = Environment.SpecialFolder.Desktop
dialog.SelectedPath = "C:\"
dialog.Description = "Select Application Configeration Files Path"
If dialog.ShowDialog() = Windows.Forms.DialogResult.OK Then
apppath = dialog.SelectedPath
End If
My.Computer.FileSystem.WriteAllText(apppath & "apppath.txt", apppath, False)
End If
Si je comprends bien, vous voulez laisser l’utilisateur choisir un dossier. Si tel est le cas, vous souhaitez utiliser FolderBrowserDialog au lieu de OpenFileDialog.
Dim filedialog As New OpenFileDialog
filedialog.IntialDirectory = Application.StartupPath
filedialog.ShowDialog()
Ou vous pouvez simplement faire moins de lignes et très simple.
http://i.imgur.com/bMq0HNz.png
'Start your dialog with a click
Private Sub Button1_Click (expéditeur en tant qu'objet, en tant qu'éventArgs) gère Button1.Click FolderBrowserDialog1.ShowDialog () End Sub
'Add if you want to show the actual path that you choose from your dialog
Private Sub FolderBrowserDialog1_Disposed(sender As Object, e As EventArgs) Handles Button1.Click
TextBox1.Text = FolderBrowserDialog1.SelectedPath.ToString
End Sub