2013-01-08 7 views
-1

J'utilise un OpenFileDialog pour permettre à l'utilisateur de sélectionner un fichier. Le dialogue quelque part enregistre le dernier répertoire de recherche, et je veux l'extraire, est-ce en quelque sorte possible.Get FileDialog InitialDirectory

Sur l'écran d'accueil de mon application, je souhaite que le dernier répertoire de recherche affiche tous les fichiers (valides). Ofc je peux en quelque sorte le lire lorsque l'utilisateur a utilisé le dialogue en premier/dernier, mais mon idée est que Windows doit l'enregistrer quelque part, alors pourquoi ne pas l'utiliser. Quelqu'un sait?

+0

Vous pouvez essayer de désactiver la propriété RestoreDirectory puis enregistrer le répertoire courant après la boîte de dialogue est terminée - qui pourrait être le répertoire final, il utilise - et puis enregistrez vous-même. Sinon, vous pouvez simplement prendre le répertoire du chemin complet du fichier sélectionné et le sauvegarder vous-même? – Rup

+0

J'ai trouvé le chemin quelque part dans le registre, mais je ne veux pas déranger avec elle. Ne connaissait pas la propriété RestoreDirectory, si elle empêche l'écriture de l'entrée de registre, alors je vais enregistrer le chemin d'accès à App.config. – efkah

Répondre

0

Et la propriété InitialDirectory?

Here you can find la page msdn dans laquelle vous pouvez lire ceci:

La propriété InitialDirectory est généralement définie à l'aide d'une des sources suivantes:

  • Un chemin qui a déjà été utilisé dans le programme, peut-être conservé à partir du dernier répertoire ou l'opération de fichier.

  • Un chemin lu à partir d'une source persistante, telle qu'un paramètre d'application, un registre ou une ressource de chaîne dans l'application.

  • chemins système et utilisateur standard Windows, tels que Program Files, MyDocuments, MyMusic, et ainsi de suite (que vous pouvez obtenir en utilisant la méthode GetFolderPath)

  • Un chemin lié à l'application en cours, comme son répertoire de démarrage (que vous pouvez obtenir en utilisant les propriétés de l'objet Application).

+0

Je pense qu'il demande comment lire la valeur par défaut que la boîte de dialogue utilisera si vous ne définissez pas InitialDirectory vous-même, qui selon lui est enregistré par le système d'exploitation quelque part. – Rup

+0

Rup a raison, c'est ce que je demandais. – efkah

Questions connexes