FileDialog Classe

Définition

Affiche une boîte de dialogue à partir de laquelle l'utilisateur peut sélectionner un fichier.Displays a dialog box from which the user can select a file.

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 OpenFileDialog l’implémentation FileDialog de et illustre la création, la définition de propriétés et l’indication de la boîte de dialogue.The following code example uses the OpenFileDialog implementation of FileDialog and illustrates creating, setting of properties, and showing the dialog box. L’exemple utilise la ShowDialog méthode pour afficher la boîte de dialogue et retourner DialogResultle.The example uses the ShowDialog method to display the dialog box and return the DialogResult. L’exemple requiert un formulaire avec un Button placé sur celui-ci System.IO et l’espace de noms qui lui est ajouté.The example requires a form with a Button placed on it and the System.IO namespace added to it.

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 OpenFileDialog pour SaveFileDialog les classes et.FileDialog is an abstract class that contains common behavior for the OpenFileDialog and SaveFileDialog classes. Elle n’est pas destinée à être utilisée directement, mais elle contient un comportement commun pour ces deux classes.It is not intended to be used directly but contains common behavior for those two classes. Vous ne pouvez pas créer une FileDialoginstance de.You cannot create an instance of FileDialog. Bien que la classe soit déclarée comme étant publique, vous ne pouvez pas hériter de celle-ci, car elle contient des méthodes abstraites internes.Although the class is declared public, you cannot inherit from it, as it contains internal abstract methods. Pour créer une boîte de dialogue permettant de sélectionner ou d’enregistrer un OpenFileDialog fichier SaveFileDialog, utilisez ou.To create a dialog box to select or save a file, use OpenFileDialog or SaveFileDialog.

FileDialogest 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.FileDialog is a modal dialog box; therefore, when shown, it blocks the rest of the application until the user has chosen a file. Quand une boîte de dialogue s’affiche de façon modale, aucune entrée (clavier ou clic de souris) ne peut se produire à l’exception des objets de la boîte de dialogue.When a dialog box is displayed modally, no input (keyboard or mouse click) can occur except to objects on the dialog box. Le programme doit masquer ou fermer la boîte de dialogue (généralement en réponse à une action de l’utilisateur) avant que l’entrée du programme appelant puisse être exécutée.The program must hide or close the dialog box (usually in response to some user action) before input to the calling program can occur.

Attention

Lorsque vous utilisez des classes dérivées de, OpenFileDialog telles SaveFileDialogque et, évitez d’utiliser des littéraux de FileDialogchaîne contenant des chemins d’accès absolus.When you use classes derived from FileDialog, such as OpenFileDialog and SaveFileDialog, avoid using string literals containing absolute paths. Au lieu de cela, obtenez dynamiquement le chemin d’accès à l’aide d’une ou de plusieurs des techniques décrites dans le tableau suivant.Instead, dynamically obtain the path using one or more of the techniques described in the following table.

Si vous souhaitez permettre aux utilisateurs de sélectionner un dossier au lieu d’un fichier, utilisez FolderBrowserDialogle.If you want to enable users to select a folder instead of a file, use the FolderBrowserDialog.

En fonction du type d’application, de la façon dont les données associées à l’application sont stockées et de la raison pour accéder au système de fichiers, il existe de nombreuses façons de créer un chemin d’accès de répertoire.Depending upon the type of application, how data associated with the application is stored, and the reason for accessing the file system, there are many possible ways in which you can create a directory path. Le tableau suivant montre les techniques permettant de créer des chemins dynamiquement.The following table shows the techniques for creating paths dynamically.

Chemin ou catégorie de programmePath or program category Classes et membres à utiliserClass and members to use
Chemins Windows standard, tels que Program Files, mes documents, le bureau, etc.Standard Windows paths, such as Program Files, MyDocuments, the Desktop and so on La System.Environment classe est la source la plus complète de ces dernières, par le biais de ses méthodes SystemDirectorystatiques, telles GetFolderPath que, ou via la méthode Environment.SpecialFolder , à l’aide de l’une des valeurs énumérées.The System.Environment class is the most complete source for these, either through its static methods, such as SystemDirectory, or through the GetFolderPath method, using one of the Environment.SpecialFolder enumerated values.
Chemins d’accès relatifs à l’application actuellePaths related to the current application La Application classe a des membres statiques pour obtenir certains chemins d' StartupPathaccès, LocalUserAppDataPathtels que CommonAppDataPath, ExecutablePath, et.The Application class has static members to obtain certain paths, such as StartupPath, ExecutablePath, LocalUserAppDataPath, and CommonAppDataPath.

La GetTempPath méthodeSystem.IO.Path de retourne le chemin d’accès du dossier temporaire.The GetTempPath method of the System.IO.Path returns the path of the temporary folder.

La GetCurrentDirectory méthode de la System.IO.Directory classe retourne le répertoire en cours d’exécution de l’application.The GetCurrentDirectory method of the System.IO.Directory class returns the application's current executing directory.

La RootDirectory propriété de la DriveInfo classe représente le répertoire racine du lecteur spécifié.The RootDirectory property of the DriveInfo class represents the specified drive's root directory.
Chemins d’accès stockés en tant que paramètres d’applicationPaths stored as application settings Accédez à la propriété des paramètres de l’application correspondante de la ApplicationSettingsBaseclasse wrapper dérivée de.Access the corresponding applications settings property of the wrapper class derived from ApplicationSettingsBase. Pour plus d’informations, consultez paramètres de l’application pour Windows Forms.For more information, see Application Settings for Windows Forms.
Stockage du RegistreRegistry storage Certaines applications stockent des informations d’annuaire dans le registre.Some applications store directory information in the registry. La Application classe a les CommonAppDataPath propriétés LocalUserAppDataPath et qui sont résolues RegistryKey en une valeur.The Application class has the CommonAppDataPath and LocalUserAppDataPath properties that resolve to a RegistryKey value.
applications ClickOnceClickOnce applications Pour les applications ClickOnce, Application utilisez des membres de UserAppDataPathclasse tels que, qui retournent un pointeur vers le répertoire de données ClickOnce.For ClickOnce applications, use Application class members such as UserAppDataPath, which will return a pointer to the ClickOnce data directory. Pour plus d’informations, consultez accès aux données locales et distantes dans les applications ClickOnce.For more information, see Accessing Local and Remote Data in ClickOnce Applications.
Applications internationalesInternational applications Pour les applications internationales, récupérez la partie relative du chemin d’accès d’une ressource de type System.Resources.ResourceReader chaîne dans votre application à l’aide de la classe.For international applications, retrieve the relative path portion from a string resource in your application by using the System.Resources.ResourceReader class. Pour plus d’informations sur la globalisation et la localisation, consultez la rubrique globalisation et localisation.For more information about globalization and localization, see the topic Globalization and Localization.

Notez qu’un chemin d’accès complet peut être créé à l’aide d’une ou de plusieurs des techniques décrites.Notice that a full path may be built up using one or more of the described techniques. Par exemple, la GetFolderPath méthode peut être utilisée pour obtenir le chemin d’accès au dossier MyDocuments, alors un paramètre d’application peut être utilisé pour ajouter une partie de sous-répertoire relative.For example, the GetFolderPath method might be used to obtain the path to the MyDocuments folder, then an application setting may be used to add a relative subdirectory portion.

La System.IO.Path classe contient des membres statiques pour faciliter la manipulation de chaînes de chemin d’accès absolu System.IO.File et System.IO.Directory relatif, tandis que les classes et ont des membres statiques qui manipulent des fichiers et des répertoires, respectivement.The System.IO.Path class contains static members to assist in manipulating absolute and relative path strings, whereas the System.IO.File and System.IO.Directory classes have static members that actually manipulate files and directories, respectively.

Important

Si l’utilisateur de votre application modifie le dossier dans FileDialog, le répertoire de travail actuel de votre application est défini à l’emplacement spécifié dans le. FileDialogIf the user of your application changes the folder in the FileDialog, then the current working directory for your application is set to the location specified in the FileDialog. Pour éviter cela, affectez RestoreDirectory à truela propriété la valeur.To prevent this, set the RestoreDirectory property to true.

Champs

EventFileOk

Possède l'événement FileOk.Owns the FileOk event.

Propriétés

AddExtension

Obtient ou définit une valeur indiquant si la boîte de dialogue ajoute automatiquement une extension au nom de fichier lorsque l'utilisateur n'en fait pas mention.Gets or sets a value indicating whether the dialog box automatically adds an extension to a file name if the user omits the extension.

AutoUpgradeEnabled

Obtient ou définit une valeur indiquant si cette instance FileDialog doit mettre automatiquement à niveau l'apparence et le comportement lorsqu'elle est exécutée sous Windows VistaWindows Vista.Gets or sets a value indicating whether this FileDialog instance should automatically upgrade appearance and behavior when running on Windows VistaWindows Vista.

CanRaiseEvents

Obtient une valeur qui indique si le composant peut déclencher un événement.Gets a value indicating whether the component can raise an event.

(Hérité de Component)
CheckFileExists

Obtient ou définit une valeur indiquant si la boîte de dialogue affiche un message d'avertissement lorsque l'utilisateur spécifie un nom de fichier qui n'existe pas.Gets or sets a value indicating whether the dialog box displays a warning if the user specifies a file name that does not exist.

CheckPathExists

Obtient ou définit une valeur indiquant si la boîte de dialogue affiche un message d'avertissement lorsque l'utilisateur spécifie un chemin d'accès qui n'existe pas.Gets or sets a value indicating whether the dialog box displays a warning if the user specifies a path that does not exist.

Container

Obtient le IContainer qui contient Component.Gets the IContainer that contains the Component.

(Hérité de Component)
CustomPlaces

Obtient la collection d'emplacements personnalisés pour cette instance FileDialog.Gets the custom places collection for this FileDialog instance.

DefaultExt

Obtient ou définit l’extension de nom de fichier par défaut.Gets or sets the default file name extension.

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 bien l'emplacement de ce raccourci (.lnk).Gets or sets a value indicating whether the dialog box returns the location of the file referenced by the shortcut or whether it returns the location of the shortcut (.lnk).

DesignMode

Obtient une valeur qui indique si Component est actuellement en mode design.Gets a value that indicates whether the Component is currently in design mode.

(Hérité de Component)
Events

Obtient la liste des gestionnaires d'événements attachés à ce Component.Gets the list of event handlers that are attached to this Component.

(Hérité de Component)
FileName

Obtient ou définit une chaîne comportant le nom de fichier sélectionné dans la boîte de dialogue Fichier.Gets or sets a string containing the file name selected in the file dialog box.

FileNames

Obtient les noms de fichiers de tous les fichiers sélectionnés dans la boîte de dialogue.Gets the file names of all selected files in the dialog box.

Filter

Obtient ou définit la chaîne de filtrage des noms de fichiers en cours, qui détermine les choix disponibles dans les zones « Enregistrer sous » ou « Types de fichiers » de la boîte de dialogue.Gets or sets the current file name filter string, which determines the choices that appear in the "Save as file type" or "Files of type" box in the dialog box.

FilterIndex

Obtient ou définit l'index du filtre actuellement sélectionné dans la boîte de dialogue de fichier.Gets or sets the index of the filter currently selected in the file dialog box.

InitialDirectory

Obtient ou définit le répertoire initial affiché dans la boîte de dialogue de fichier.Gets or sets the initial directory displayed by the file dialog box.

Instance

Obtient le handle d'instance Win32 pour l'application.Gets the Win32 instance handle for the application.

Options

Obtient des valeurs pour initialiser FileDialog.Gets values to initialize the FileDialog.

RestoreDirectory

Obtient ou définit une valeur indiquant si la boîte de dialogue restaure le répertoire actif avant la fermeture.Gets or sets a value indicating whether the dialog box restores the directory to the previously selected directory before closing.

ShowHelp

Obtient ou définit une valeur indiquant si le bouton Aide est affiché dans la boîte de dialogue Fichier.Gets or sets a value indicating whether the Help button is displayed in the file dialog box.

Site

Obtient ou définit le ISite de Component.Gets or sets the ISite of the Component.

(Hérité de Component)
SupportMultiDottedExtensions

Obtient ou définit le fait que la boîte de dialogue prend ou non en charge l'affichage et l'enregistrement de fichiers qui présentent plusieurs extensions de nom de fichier.Gets or sets whether the dialog box supports displaying and saving files that have multiple file name extensions.

Tag

Obtient ou définit un objet qui contient des données relatives au contrôle.Gets or sets an object that contains data about the control.

(Hérité de CommonDialog)
Title

Obtient ou définit le titre de la boîte de dialogue de fichier.Gets or sets the file dialog box title.

ValidateNames

Obtient ou définit une valeur indiquant si la boîte de dialogue n'accepte que des noms de fichiers Win32 valides.Gets or sets a value indicating whether the dialog box accepts only valid Win32 file names.

Méthodes

CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Hérité de MarshalByRefObject)
Dispose()

Libère toutes les ressources utilisées par Component.Releases all resources used by the Component.

(Hérité de Component)
Dispose(Boolean)

Libère les ressources non managées utilisées par Component et libère éventuellement les ressources managées.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Hérité de Component)
Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetLifetimeService()

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Hérité de MarshalByRefObject)
GetService(Type)

Retourne un objet qui représente un service fourni par Component ou par son Container.Returns an object that represents a service provided by the Component or by its Container.

(Hérité de Component)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
HookProc(IntPtr, Int32, IntPtr, IntPtr)

Définit la procédure de raccordement d'une boîte de dialogue commune devant être substituée pour qu'une fonctionnalité spécifique soit ajoutée à la boîte de dialogue de fichier.Defines the common dialog box hook procedure that is overridden to add specific functionality to the file dialog box.

InitializeLifetimeService()

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.Obtains a lifetime service object to control the lifetime policy for this instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.Creates a shallow copy of the current MarshalByRefObject object.

(Hérité de MarshalByRefObject)
OnFileOk(CancelEventArgs)

Déclenche l'événement FileOk.Raises the FileOk event.

OnHelpRequest(EventArgs)

Déclenche l'événement HelpRequest.Raises the HelpRequest event.

(Hérité de CommonDialog)
OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr)

Définit la procédure de fenêtre propriétaire devant être substituée pour qu'une fonctionnalité spécifique soit ajoutée à une boîte de dialogue commune.Defines the owner window procedure that is overridden to add specific functionality to a common dialog box.

(Hérité de CommonDialog)
Reset()

Rétablit les valeurs par défaut de toutes les propriétés.Resets all properties to their default values.

RunDialog(IntPtr)

Spécifie une boîte de dialogue commune.Specifies a common dialog box.

ShowDialog()

Exécute une boîte de dialogue commune avec un propriétaire par défaut.Runs a common dialog box with a default owner.

(Hérité de CommonDialog)
ShowDialog(IWin32Window)

Exécute une boîte de dialogue commune avec le propriétaire spécifié.Runs a common dialog box with the specified owner.

(Hérité de CommonDialog)
ToString()

Fournit une version de chaîne de cet objet.Provides a string version of this object.

Événements

Disposed

Se produit lorsque le composant est supprimé par un appel à la méthode Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Hérité de Component)
FileOk

Se produit quand l’utilisateur clique sur le bouton Ouvrir ou Enregistrer dans une boîte de dialogue de fichier.Occurs when the user clicks on the Open or Save button on a file dialog box.

HelpRequest

Se produit lorsque l'utilisateur clique sur le bouton Aide dans une boîte de dialogue commune.Occurs when the user clicks the Help button on a common dialog box.

(Hérité de CommonDialog)

S’applique à

Voir aussi