FileDialog FileDialog FileDialog FileDialog Class

定義

Displays a dialog box from which the user can select a file.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
継承
派生

次のコード例では、OpenFileDialogの実装FileDialogを作成し、プロパティの設定し、ダイアログ ボックスの表示を示しています。The following code example uses the OpenFileDialog implementation of FileDialog and illustrates creating, setting of properties, and showing the dialog box. この例では、ShowDialogダイアログ ボックスを表示して返すメソッド、DialogResultします。The example uses the ShowDialog method to display the dialog box and return the DialogResult. 例では、使用して、フォームが必要です、Button配置されると、System.IO名前空間を追加します。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

注釈

FileDialog 抽象クラスの一般的な動作を含む、OpenFileDialogSaveFileDialogクラス。FileDialog is an abstract class that contains common behavior for the OpenFileDialog and SaveFileDialog classes. 直接使用するものではありませんが、これら 2 つのクラスの一般的な動作が含まれています。It is not intended to be used directly but contains common behavior for those two classes. インスタンスを作成することはできませんFileDialogします。You cannot create an instance of FileDialog. パブリック クラスに宣言されますが、内部の抽象メソッドが含まれているため、そこから継承できません。Although the class is declared public, you cannot inherit from it, as it contains internal abstract methods. 選択するか、ファイルを保存するダイアログ ボックスを作成するには、使用OpenFileDialogまたはSaveFileDialogします。To create a dialog box to select or save a file, use OpenFileDialog or SaveFileDialog.

FileDialog モーダル ダイアログ ボックス。そのため、表示されたら、アプリケーションの残りの部分までブロック、ユーザーがファイルを選択します。FileDialog is a modal dialog box; therefore, when shown, it blocks the rest of the application until the user has chosen a file. ダイアログ ボックスがモーダルとして表示されたら、入力 (キーボードやマウスのクリック) しか発生しません ダイアログ ボックス上のオブジェクトにします。When a dialog box is displayed modally, no input (keyboard or mouse click) can occur except to objects on the dialog box. プログラムを非表示にする必要があります。 または呼び出しプログラムに入力する前に (通常はユーザーの操作への応答) で、ダイアログ ボックスが閉じる発生することができます。The program must hide or close the dialog box (usually in response to some user action) before input to the calling program can occur.

注意事項

派生したクラスを使用するとFileDialogなどOpenFileDialogSaveFileDialog、絶対パスを含む文字列リテラルは使用しないでください。When you use classes derived from FileDialog, such as OpenFileDialog and SaveFileDialog, avoid using string literals containing absolute paths. 代わりに、次の表で説明する手法の 1 つ以上を使用してパスを動的に取得します。Instead, dynamically obtain the path using one or more of the techniques described in the following table.

ファイルの代わりにフォルダーを選択して、使用するユーザーを有効にする場合、FolderBrowserDialogします。If you want to enable users to select a folder instead of a file, use the FolderBrowserDialog.

アプリケーション、アプリケーションに関連付けられているデータの格納方法、およびファイル システムにアクセスするための種類によっては、さまざまなも可能なディレクトリ パスを作成することができます。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. 次の表では、パスを動的に作成するためのテクニックを示します。The following table shows the techniques for creating paths dynamically.

パスまたはプログラムのカテゴリPath or program category クラスとメンバーを使用するにはClass and members to use
プログラム ファイル、マイ ドキュメント、デスクトップなどの標準の Windows パスStandard Windows paths, such as Program Files, MyDocuments, the Desktop and so on System.Environmentクラスは、これらの静的メソッドを使用するかの最も完全なソースなどSystemDirectory、または、GetFolderPathのいずれかを使用して、メソッド、Environment.SpecialFolder列挙値。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.
現在のアプリケーションに関連するパスPaths related to the current application Applicationクラスなど、特定のパスを取得する静的メンバーにはStartupPathExecutablePathLocalUserAppDataPath、およびCommonAppDataPathします。The Application class has static members to obtain certain paths, such as StartupPath, ExecutablePath, LocalUserAppDataPath, and CommonAppDataPath.

GetTempPathのメソッド、System.IO.Path一時フォルダーのパスを返します。The GetTempPath method of the System.IO.Path returns the path of the temporary folder.

GetCurrentDirectoryのメソッド、System.IO.Directoryクラスは、現在実行中のアプリケーションのディレクトリを返します。The GetCurrentDirectory method of the System.IO.Directory class returns the application's current executing directory.

RootDirectoryのプロパティ、DriveInfoクラスは、指定したドライブのルート ディレクトリを表します。The RootDirectory property of the DriveInfo class represents the specified drive's root directory.
アプリケーション設定として格納されているパスPaths stored as application settings 派生したラッパー クラスの設定のプロパティの対応するアプリケーションにアクセスApplicationSettingsBaseします。Access the corresponding applications settings property of the wrapper class derived from ApplicationSettingsBase. 詳細については、次を参照してください。アプリケーション設定を Windows フォームします。For more information, see Application Settings for Windows Forms.
レジストリのストレージRegistry storage 一部のアプリケーションでは、ディレクトリ情報をレジストリに格納します。Some applications store directory information in the registry. Applicationクラスには、CommonAppDataPathLocalUserAppDataPathプロパティに解決される、RegistryKey値。The Application class has the CommonAppDataPath and LocalUserAppDataPath properties that resolve to a RegistryKey value.
ClickOnce アプリケーションClickOnce applications ClickOnce アプリケーションの場合は、使用してApplicationクラスのメンバーなどUserAppDataPath、これには、ClickOnce データ ディレクトリにポインターを返します。For ClickOnce applications, use Application class members such as UserAppDataPath, which will return a pointer to the ClickOnce data directory. 詳細については、次を参照してください。ローカルへのアクセスとリモート データには、ClickOnce アプリケーションします。For more information, see Accessing Local and Remote Data in ClickOnce Applications.
国際対応アプリケーションInternational applications 国際対応のアプリケーション相対パスの部分から取得、アプリケーションでの文字列リソースを使用して、System.Resources.ResourceReaderクラス。For international applications, retrieve the relative path portion from a string resource in your application by using the System.Resources.ResourceReader class. グローバリゼーションとローカリゼーションの詳細については、トピックを参照してください。グローバリゼーションとローカリゼーションします。For more information about globalization and localization, see the topic Globalization and Localization.

完全なパスがビルドすること説明した手法の 1 つ以上を使用してに注意してください。Notice that a full path may be built up using one or more of the described techniques. たとえば、 GetFolderPath [マイ ドキュメント] フォルダーへのパスを取得する方法を使用できますし、サブディレクトリの相対的な部分を追加するのにはアプリケーション設定をことができます。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.

System.IO.Pathクラスには、絶対と相対パスの文字列の操作を支援する静的メンバーが含まれています、System.IO.FileSystem.IO.Directoryクラスは、実際には、ファイルとディレクトリをそれぞれ操作する静的メンバーを持ちます。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.

重要

アプリケーションのユーザーがフォルダーを変更するかどうか、 FileDialog、アプリケーションの現在の作業ディレクトリがで指定された場所に設定、FileDialogします。If 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. これを回避するには、設定、RestoreDirectoryプロパティをtrueします。To prevent this, set the RestoreDirectory property to true.

フィールド

EventFileOk EventFileOk EventFileOk EventFileOk

Owns the FileOk event.Owns the FileOk event.

プロパティ

AddExtension AddExtension AddExtension AddExtension

Gets or sets a value indicating whether the dialog box automatically adds an extension to a file name if the user omits the extension.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 AutoUpgradeEnabled AutoUpgradeEnabled AutoUpgradeEnabled

Gets or sets a value indicating whether this FileDialog instance should automatically upgrade appearance and behavior when running on 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 CanRaiseEvents CanRaiseEvents CanRaiseEvents

コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。Gets a value indicating whether the component can raise an event.

(Inherited from Component)
CheckFileExists CheckFileExists CheckFileExists CheckFileExists

Gets or sets a value indicating whether the dialog box displays a warning if the user specifies a file name that does not exist.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 CheckPathExists CheckPathExists CheckPathExists

Gets or sets a value indicating whether the dialog box displays a warning if the user specifies a path that does not exist.Gets or sets a value indicating whether the dialog box displays a warning if the user specifies a path that does not exist.

Container Container Container Container

IContainer を格納している Component を取得します。Gets the IContainer that contains the Component.

(Inherited from Component)
CustomPlaces CustomPlaces CustomPlaces CustomPlaces

Gets the custom places collection for this FileDialog instance.Gets the custom places collection for this FileDialog instance.

DefaultExt DefaultExt DefaultExt DefaultExt

Gets or sets the default file name extension.Gets or sets the default file name extension.

DereferenceLinks DereferenceLinks DereferenceLinks DereferenceLinks

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).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 DesignMode DesignMode DesignMode

Component が現在デザイン モードかどうかを示す値を取得します。Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Component に結び付けられているイベント ハンドラーのリストを取得します。Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
FileName FileName FileName FileName

Gets or sets a string containing the file name selected in the file dialog box.Gets or sets a string containing the file name selected in the file dialog box.

FileNames FileNames FileNames FileNames

Gets the file names of all selected files in the dialog box.Gets the file names of all selected files in the dialog box.

Filter Filter Filter Filter

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.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 FilterIndex FilterIndex FilterIndex

Gets or sets the index of the filter currently selected in the file dialog box.Gets or sets the index of the filter currently selected in the file dialog box.

InitialDirectory InitialDirectory InitialDirectory InitialDirectory

Gets or sets the initial directory displayed by the file dialog box.Gets or sets the initial directory displayed by the file dialog box.

Instance Instance Instance Instance

Gets the Win32 instance handle for the application.Gets the Win32 instance handle for the application.

Options Options Options Options

Gets values to initialize the FileDialog.Gets values to initialize the FileDialog.

RestoreDirectory RestoreDirectory RestoreDirectory RestoreDirectory

Gets or sets a value indicating whether the dialog box restores the directory to the previously selected directory before closing.Gets or sets a value indicating whether the dialog box restores the directory to the previously selected directory before closing.

ShowHelp ShowHelp ShowHelp ShowHelp

Gets or sets a value indicating whether the Help button is displayed in the file dialog box.Gets or sets a value indicating whether the Help button is displayed in the file dialog box.

Site Site Site Site

ComponentISite を取得または設定します。Gets or sets the ISite of the Component.

(Inherited from Component)
SupportMultiDottedExtensions SupportMultiDottedExtensions SupportMultiDottedExtensions SupportMultiDottedExtensions

Gets or sets whether the dialog box supports displaying and saving files that have multiple file name extensions.Gets or sets whether the dialog box supports displaying and saving files that have multiple file name extensions.

Tag Tag Tag Tag

コントロールに関するデータを格納するオブジェクトを取得または設定します。Gets or sets an object that contains data about the control.

(Inherited from CommonDialog)
Title Title Title Title

Gets or sets the file dialog box title.Gets or sets the file dialog box title.

ValidateNames ValidateNames ValidateNames ValidateNames

Gets or sets a value indicating whether the dialog box accepts only valid Win32 file names.Gets or sets a value indicating whether the dialog box accepts only valid Win32 file names.

メソッド

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Component によって使用されているすべてのリソースを解放します。Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Component によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Component またはその Container で提供されるサービスを表すオブジェクトを返します。Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
HookProc(IntPtr, Int32, IntPtr, IntPtr) HookProc(IntPtr, Int32, IntPtr, IntPtr) HookProc(IntPtr, Int32, IntPtr, IntPtr) HookProc(IntPtr, Int32, IntPtr, IntPtr)

Defines the common dialog box hook procedure that is overridden to add specific functionality to the file dialog box.Defines the common dialog box hook procedure that is overridden to add specific functionality to the file dialog box.

InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
OnFileOk(CancelEventArgs) OnFileOk(CancelEventArgs) OnFileOk(CancelEventArgs) OnFileOk(CancelEventArgs)

Raises the FileOk event.Raises the FileOk event.

OnHelpRequest(EventArgs) OnHelpRequest(EventArgs) OnHelpRequest(EventArgs) OnHelpRequest(EventArgs)

HelpRequest イベントを発生させます。Raises the HelpRequest event.

(Inherited from CommonDialog)
OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr) OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr) OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr) OwnerWndProc(IntPtr, Int32, IntPtr, IntPtr)

コモン ダイアログ ボックスに特定の機能を追加するためにオーバーライドされる、オーナー ウィンドウ プロシージャを定義します。Defines the owner window procedure that is overridden to add specific functionality to a common dialog box.

(Inherited from CommonDialog)
Reset() Reset() Reset() Reset()

Resets all properties to their default values.Resets all properties to their default values.

RunDialog(IntPtr) RunDialog(IntPtr) RunDialog(IntPtr) RunDialog(IntPtr)

Specifies a common dialog box.Specifies a common dialog box.

ShowDialog() ShowDialog() ShowDialog() ShowDialog()

既定のオーナーを使用してコモン ダイアログ ボックスを実行します。Runs a common dialog box with a default owner.

(Inherited from CommonDialog)
ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window) ShowDialog(IWin32Window)

指定したオーナーを使用してコモン ダイアログ ボックスを実行します。Runs a common dialog box with the specified owner.

(Inherited from CommonDialog)
ToString() ToString() ToString() ToString()

Provides a string version of this object.Provides a string version of this object.

イベント

Disposed Disposed Disposed Disposed

Dispose() メソッドの呼び出しによってコンポーネントが破棄されると発生します。Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
FileOk FileOk FileOk FileOk

Occurs when the user clicks on the Open or Save button on a file dialog box.Occurs when the user clicks on the Open or Save button on a file dialog box.

HelpRequest HelpRequest HelpRequest HelpRequest

ユーザーがコモン ダイアログ ボックスの [?] ボタンをクリックすると発生します。Occurs when the user clicks the Help button on a common dialog box.

(Inherited from CommonDialog)

適用対象

こちらもご覧ください