web-dev-qa-db-fra.com

Comment utiliser la boîte de dialogue Ouvrir un fichier pour sélectionner un dossier

Duplicata possible:
Comment configurer un OpenFileDIalog pour sélectionner des dossiers?

J'utilise C # et je veux éviter complètement SelectFolderDialog pour sélectionner un dossier. Au lieu de cela, je veux utiliser quelque chose de plus proche d'un OpenFileDialog juste pour sélectionner un dossier.

Pour un exemple plus visuel, je cherche quelque chose de proche (sinon exactement) comme le suivant: http://i44.tinypic.com/x38tx1.png

enter image description here

Des idées?

21
Demasterpl

La boîte de dialogue de sélection de dossier de Windows Vista ressemble assez à ce que vous voulez. Malheureusement, FolderBrowserDialog de .NET affiche l'ancienne boîte de dialogue de type Windows-XP, que vous voulez éviter.

Pour accéder à cette boîte de dialogue de style Vista, vous pouvez soit

  • utiliser une bibliothèque .NET tierce (par exemple Ookii.Dialogs ),
  • utiliser les appels API Windows pertinents ou
  • utilisez Windows API Code Pack :

    using Microsoft.WindowsAPICodePack.Dialogs;
    
    ...
    
    var dialog = new CommonOpenFileDialog(); 
    dialog.IsFolderPicker = true;
    CommonFileDialogResult result = dialog.ShowDialog();
    

    Notez que cette boîte de dialogue n'est pas disponible sur les systèmes d'exploitation antérieurs à Windows Vista, assurez-vous donc de vérifier CommonFileDialog.IsPlatformSupported première.

29
Heinzi