FileDialog Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Affiche une boîte de dialogue à partir de laquelle l’utilisateur peut sélectionner un fichier.
public ref class FileDialog abstract : System::Windows::Forms::CommonDialog
public abstract class FileDialog : System.Windows.Forms.CommonDialog
type FileDialog = class
inherit CommonDialog
Public MustInherit Class FileDialog
Inherits CommonDialog
- Héritage
- Dérivé
Exemples
L’exemple de code suivant utilise l’implémentation et FileDialog illustre la création, le OpenFileDialog paramètre des propriétés et l’affichage de la boîte de dialogue. L’exemple utilise la méthode pour afficher la ShowDialog boîte de dialogue et retourner le DialogResult. L’exemple nécessite un formulaire avec un Button formulaire placé sur celui-ci et l’espace System.IO de noms ajouté à celui-ci.
private:
void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
Stream^ myStream;
OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;
openFileDialog1->InitialDirectory = "c:\\";
openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
openFileDialog1->FilterIndex = 2;
openFileDialog1->RestoreDirectory = true;
if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
{
if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
{
// Insert code to read the stream here.
myStream->Close();
}
}
}
var fileContent = string.Empty;
var filePath = string.Empty;
using (OpenFileDialog openFileDialog = new OpenFileDialog())
{
openFileDialog.InitialDirectory = "c:\\";
openFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
openFileDialog.FilterIndex = 2;
openFileDialog.RestoreDirectory = true;
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
//Get the path of specified file
filePath = openFileDialog.FileName;
//Read the contents of the file into a stream
var fileStream = openFileDialog.OpenFile();
using (StreamReader reader = new StreamReader(fileStream))
{
fileContent = reader.ReadToEnd();
}
}
}
MessageBox.Show(fileContent, "File Content at path: " + filePath, MessageBoxButtons.OK);
Private Sub button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim myStream As Stream = Nothing
Dim openFileDialog1 As New OpenFileDialog()
openFileDialog1.InitialDirectory = "c:\"
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
openFileDialog1.FilterIndex = 2
openFileDialog1.RestoreDirectory = True
If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
Try
myStream = openFileDialog1.OpenFile()
If (myStream IsNot Nothing) Then
' Insert code to read the stream here.
End If
Catch Ex As Exception
MessageBox.Show("Cannot read file from disk. Original error: " & Ex.Message)
Finally
' Check this again, since we need to make sure we didn't throw an exception on open.
If (myStream IsNot Nothing) Then
myStream.Close()
End If
End Try
End If
End Sub
Remarques
FileDialogest une classe abstraite qui contient un comportement commun pour les classes et SaveFileDialog les OpenFileDialog classes. Il n’est pas destiné à être utilisé directement, mais contient un comportement courant pour ces deux classes. Vous ne pouvez pas créer une instance de FileDialog. Bien que la classe soit déclarée publique, vous ne pouvez pas hériter de celle-ci, car elle contient des méthodes abstraites internes. Pour créer une boîte de dialogue pour sélectionner ou enregistrer un fichier, utilisez OpenFileDialog ou SaveFileDialog.
FileDialog est une boîte de dialogue modale ; par conséquent, lorsqu’il est affiché, il bloque le reste de l’application jusqu’à ce que l’utilisateur ait choisi un fichier. Lorsqu’une boîte de dialogue s’affiche modalement, aucune entrée (clavier ou clic de souris) ne peut se produire à l’exception des objets de la boîte de dialogue. Le programme doit masquer ou fermer la boîte de dialogue (généralement en réponse à une action utilisateur) avant que l’entrée au programme appelant puisse se produire.
Avertissement
Lorsque vous utilisez des classes dérivées de FileDialog, telles que OpenFileDialog et SaveFileDialog, évitez d’utiliser des littéraux de chaîne contenant des chemins absolus. Au lieu de cela, obtenez dynamiquement le chemin à l’aide d’une ou plusieurs des techniques décrites dans le tableau suivant.
Si vous souhaitez permettre aux utilisateurs de sélectionner un dossier au lieu d’un fichier, utilisez le FolderBrowserDialogfichier .
Selon le type d’application, la façon dont les données associées à l’application sont stockées et la raison d’accéder au système de fichiers, il existe de nombreuses façons possibles de créer un chemin d’accès au répertoire. Le tableau suivant présente les techniques de création dynamique de chemins d’accès.
| Chemin d’accès ou catégorie de programme | Classe et membres à utiliser |
|---|---|
| Chemins Windows standard, tels que Program Files, MyDocuments, desktop, etc. | La System.Environment classe est la source la plus complète pour celles-ci, soit par le biais de ses méthodes statiques, telles que SystemDirectory, soit par le biais de la GetFolderPath méthode, à l’aide de l’une Environment.SpecialFolder des valeurs énumérées. |
| Chemins liés à l’application actuelle | La Application classe a des membres statiques pour obtenir certains chemins, tels que StartupPath, ExecutablePath, LocalUserAppDataPath, et CommonAppDataPath. Méthode GetTempPath du System.IO.Path retour du chemin d’accès du dossier temporaire. La GetCurrentDirectory méthode de la System.IO.Directory classe retourne le répertoire en cours d’exécution de l’application. La RootDirectory propriété de la DriveInfo classe représente le répertoire racine du lecteur spécifié. |
| Chemins stockés en tant que paramètres d’application | Accédez à la propriété des paramètres des applications correspondante de la classe wrapper dérivée de ApplicationSettingsBase. Pour plus d’informations, consultez Paramètres d’application pour Windows Forms. |
| Stockage du Registre | Certaines applications stockent des informations d’annuaire dans le Registre. La Application classe a les propriétés et LocalUserAppDataPath les CommonAppDataPath propriétés qui se résolvent en valeurRegistryKey. |
| Applications ClickOnce | Pour les applications ClickOnce, utilisez Application des membres de classe tels que UserAppDataPath, qui retournent un pointeur vers le répertoire de données ClickOnce. Pour plus d’informations, consultez Accès aux données locales et distantes dans les applications ClickOnce. |
| Applications internationales | Pour les applications internationales, récupérez la partie relative du chemin d’accès à partir d’une ressource de chaîne dans votre application à l’aide de la System.Resources.ResourceReader classe. Pour plus d’informations sur la globalisation et la localisation, consultez la rubrique Globalisation et localisation. |
Notez qu’un chemin d’accès complet peut être créé à l’aide d’une ou plusieurs des techniques décrites. Par exemple, la GetFolderPath méthode peut être utilisée pour obtenir le chemin d’accès au dossier MyDocuments, puis un paramètre d’application peut être utilisé pour ajouter une partie de sous-répertoire relative.
La System.IO.Path classe contient des membres statiques pour aider à manipuler des chaînes de chemin d’accès absolues et relatives, tandis que les System.IO.File classes et System.IO.Directory les classes ont des membres statiques qui manipulent réellement des fichiers et des répertoires, respectivement.
Important
Si l’utilisateur de votre application modifie le dossier dans le FileDialogrépertoire de travail actif pour votre application est défini sur l’emplacement spécifié dans le FileDialog. Pour éviter cela, définissez la RestoreDirectory propriété sur true.
Champs
| Nom | Description |
|---|---|
| EventFileOk |
Possède l’événement FileOk . |
Propriétés
| Nom | Description |
|---|---|
| AddExtension |
Obtient ou définit une valeur indiquant si la boîte de dialogue ajoute automatiquement une extension à un nom de fichier si l’utilisateur omet l’extension. |
| AddToRecent |
Obtient ou définit une valeur indiquant si la boîte de dialogue ajoute le fichier ouvert ou enregistré dans la liste récente. |
| AutoUpgradeEnabled |
Obtient ou définit une valeur indiquant si cette FileDialog instance doit mettre à niveau automatiquement l’apparence et le comportement lors de l’exécution sur Windows Vista. |
| CanRaiseEvents |
Obtient une valeur indiquant si le composant peut déclencher un événement. (Hérité de Component) |
| CheckFileExists |
Obtient ou définit une valeur indiquant si la boîte de dialogue affiche un avertissement si l’utilisateur spécifie un nom de fichier qui n’existe pas. |
| CheckPathExists |
Obtient ou définit une valeur indiquant si la boîte de dialogue affiche un avertissement si l’utilisateur spécifie un chemin d’accès qui n’existe pas. |
| ClientGuid |
Obtient ou définit le GUID à associer à cet état de boîte de dialogue. En règle générale, l’état tel que le dernier dossier visité et la position et la taille de la boîte de dialogue sont conservés en fonction du nom du fichier exécutable. En spécifiant un GUID, une application peut avoir différents états persistants pour différentes versions de la boîte de dialogue au sein de la même application (par exemple, une boîte de dialogue d’importation et une boîte de dialogue ouverte). Cette fonctionnalité n’est pas disponible si une application n’utilise pas de styles visuels ou si AutoUpgradeEnabled elle est définie |
| Container |
Obtient le IContainer fichier qui contient le Component. (Hérité de Component) |
| CustomPlaces |
Obtient la collection places personnalisée pour cette FileDialog instance. |
| DefaultExt |
Obtient ou définit l’extension de nom de fichier par défaut. |
| DereferenceLinks |
Obtient ou définit une valeur indiquant si la boîte de dialogue retourne l’emplacement du fichier référencé par le raccourci ou si elle retourne l’emplacement du raccourci (.lnk). |
| DesignMode |
Obtient une valeur qui indique si la Component valeur est actuellement en mode création. (Hérité de Component) |
| Events |
Obtient la liste des gestionnaires d’événements qui sont attachés à ce Component. (Hérité de Component) |
| FileName |
Obtient ou définit une chaîne contenant le nom de fichier sélectionné dans la boîte de dialogue fichier. |
| FileNames |
Obtient les noms de fichiers de tous les fichiers sélectionnés dans la boîte de dialogue. |
| Filter |
Obtient ou définit la chaîne de filtre de nom de fichier actuelle, qui détermine les choix qui apparaissent dans la zone « Enregistrer en tant que type de fichier » ou « Fichiers de type » dans la boîte de dialogue. |
| FilterIndex |
Obtient ou définit l’index du filtre actuellement sélectionné dans la boîte de dialogue fichier. |
| InitialDirectory |
Obtient ou définit le répertoire initial affiché par la boîte de dialogue fichier. |
| Instance |
Obtient le handle d’instance Win32 pour l’application. |
| OkRequiresInteraction |
Obtient ou définit une valeur indiquant si le bouton OK de la boîte de dialogue est désactivé jusqu’à ce que l’utilisateur navigue dans l’affichage ou modifie le nom de fichier (le cas échéant). |
| Options |
Obtient des valeurs pour initialiser le FileDialog. |
| RestoreDirectory |
Obtient ou définit une valeur indiquant si la boîte de dialogue restaure le répertoire dans le répertoire précédemment sélectionné avant la fermeture. |
| ShowHelp |
Obtient ou définit une valeur indiquant si le bouton Aide s’affiche dans la boîte de dialogue fichier. |
| ShowHiddenFiles |
Obtient ou définit une valeur indiquant si la boîte de dialogue affiche les fichiers masqués et système. |
| ShowPinnedPlaces |
Obtient ou définit une valeur indiquant si les éléments affichés par défaut dans le volet de navigation de l’affichage sont affichés. |
| Site |
Obtient ou définit le ISiteComponent. (Hérité de Component) |
| SupportMultiDottedExtensions |
Obtient ou définit si la boîte de dialogue prend en charge l’affichage et l’enregistrement de fichiers qui ont plusieurs extensions de nom de fichier. |
| Tag |
Obtient ou définit un objet qui contient des données sur le contrôle. (Hérité de CommonDialog) |
| Title |
Obtient ou définit le titre de la boîte de dialogue de fichier. |
| ValidateNames |
Obtient ou définit une valeur indiquant si la boîte de dialogue accepte uniquement les noms de fichiers Win32 valides. |
Méthodes
| Nom | Description |
|---|---|
| CreateObjRef(Type) |
Crée un objet qui contient toutes les informations pertinentes requises pour générer un proxy utilisé pour communiquer avec un objet distant. (Hérité de MarshalByRefObject) |
| Dispose() |
Libère toutes les ressources utilisées par le Component. (Hérité de Component) |
| Dispose(Boolean) |
Libère les ressources non managées utilisées par les Component ressources gérées et libère éventuellement les ressources managées. (Hérité de Component) |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetLifetimeService() |
Obsolète.
Récupère l’objet de service de durée de vie actuel qui contrôle la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| GetService(Type) |
Retourne un objet qui représente un service fourni par le Component ou par son Container. (Hérité de Component) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| HookProc(IntPtr, Int32, IntPtr, IntPtr) |
Définit la procédure courante de raccordement de boîte de dialogue substituée pour ajouter des fonctionnalités spécifiques à la boîte de dialogue fichier. |
| InitializeLifetimeService() |
Obsolète.
Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| MemberwiseClone(Boolean) |
Crée une copie superficielle de l’objet actuel MarshalByRefObject . (Hérité de MarshalByRefObject) |
| OnFileOk(CancelEventArgs) |
Déclenche l’événement FileOk. |
| OnHelpRequest(EventArgs) |
Déclenche l’événement HelpRequest. (Hérité de CommonDialog) |
| OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr) |
Définit la procédure de fenêtre propriétaire substituée pour ajouter des fonctionnalités spécifiques à une boîte de dialogue commune. (Hérité de CommonDialog) |
| Reset() |
Réinitialise toutes les propriétés à leurs valeurs par défaut. |
| RunDialog(IntPtr) |
Spécifie une boîte de dialogue commune. |
| ShowDialog() |
Exécute une boîte de dialogue commune avec un propriétaire par défaut. (Hérité de CommonDialog) |
| ShowDialog(IWin32Window) |
Exécute une boîte de dialogue commune avec le propriétaire spécifié. (Hérité de CommonDialog) |
| ToString() |
Fournit une version de chaîne de cet objet. |
Événements
| Nom | Description |
|---|---|
| Disposed |
Se produit lorsque le composant est supprimé par un appel à la Dispose() méthode. (Hérité de Component) |
| FileOk |
Se produit lorsque l’utilisateur clique sur le bouton Ouvrir ou Enregistrer dans une boîte de dialogue fichier. |
| HelpRequest |
Se produit lorsque l’utilisateur clique sur le bouton Aide dans une boîte de dialogue commune. (Hérité de CommonDialog) |