FileDialogとは? わかりやすく解説

FileDialog イベント


パブリック イベントパブリック イベント

参照参照

関連項目

FileDialog クラス
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader

FileDialog クラス

ユーザーがファイルを選択するダイアログ ボックスを表示します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文構文

Public MustInherit Class
 FileDialog
    Inherits CommonDialog
public abstract class FileDialog : CommonDialog
public ref class FileDialog abstract : public
 CommonDialog
public abstract class FileDialog extends CommonDialog
public abstract class FileDialog extends
 CommonDialog
解説解説

FileDialog は、OpenFileDialog クラスと SaveFileDialog クラスの共通する動作を定義する抽象クラスです。このクラスは、直接使用するためのものではなく、これら 2 つのクラスの共通する動作を定義しています。FileDialog のインスタンスは作成できません。クラスはパブリックとして宣言されますが、内部抽象メソッドが定義されているため、このクラスからは継承できません。ファイルの選択または保存を行うためのダイアログ ボックスを作成するには、OpenFileDialog または SaveFileDialog を使用します。

FileDialog はモーダル ダイアログ ボックスです。このため、このダイアログ ボックスが表示されているときは、ユーザーがファイルを選択するまでアプリケーションの他の機能は動作しません。ダイアログ ボックスがモーダルとして表示されている場合、キーボードやマウス クリックによる入力は、ダイアログ ボックスのオブジェクトに対してしか発生しません。呼び出しプログラムに対する入力が発生する前に、プログラムが (通常、何らかのユーザーの操作に対する応答として) ダイアログ ボックスを非表示にするか、または終了する必要があります。

注意に関するメモ注意

FileDialog の派生クラス (OpenFileDialog や SaveFileDialog など) を使用するときは、絶対パスを含むリテラル文字列を使用しないようにします。代わりに、次の表に記載された手法のいずれかを使用して、動的にパスを取得します。

アプリケーションの種類、アプリケーションに関連付けられたデータの格納方法、およびファイル システムにアクセスする理由に応じて、ディレクトリ パスを作成する方法は多数あります。パスを動的に作成する手法を次の表に示します。

パスまたはプログラムのカテゴリ

使用するクラスとメンバ

標準的な Windows のパス (Program Files、My Documents、デスクトップなど)

これらのパスに関する情報を取得するには、System.Environment クラスを使用する方法が最適です。この場合、SystemDirectory などの静的メソッドを使用するか、GetFolderPath メソッドで Environment.SpecialFolder 列挙値の 1 つを指定します。

現在のアプリケーションに関連するパス

Application クラスに、特定のパスを取得するための静的メソッド (StartupPath、ExecutablePath、LocalUserAppDataPath、CommonAppDataPath など) が用意されています。

System.IO.Path の GetTempPath メソッドは、一時フォルダのパスを返します。

System.IO.Directory クラスの GetCurrentDirectory メソッドは、アプリケーションの現在の実行ディレクトリを返します。

DriveInfo クラスの RootDirectory プロパティは、指定したドライブのルート ディレクトリを表します。

アプリケーション設定として格納されたパス

ApplicationSettingsBase から継承したラッパー クラスの、対応するアプリケーション設定プロパティにアクセスします。詳細については、「Windows フォームのアプリケーション設定」を参照してください。

レジストリ ストレージ

一部のアプリケーションは、ディレクトリ情報をレジストリに格納します。Application クラスには、CommonAppDataPath プロパティと LocalUserAppDataPath プロパティがあり、これを RegistryKey 値に解決できます。

ClickOnce アプリケーション

ClickOnce アプリケーションについては、ClickOnce のデータ ディレクトリへのポインタを返す UserAppDataPath などの Application クラスのメンバを使用します。詳細については、「ClickOnce アプリケーションにおけるローカル データおよびリモート データへのアクセス」を参照してください。

国際対応のアプリケーション

国際対応のアプリケーションについては、System.Resources.ResourceReader クラスを使用して、アプリケーション内の文字列リソースから相対パス部分を取得します。グローバリゼーションおよびローカリゼーションの詳細については、「エンコーディングとローカリゼーション」のトピックを参照してください。

完全パスを作成するために、上記のうち 1 つ以上の手法が必要となる場合があります。たとえば、GetFolderPath メソッドを使用して My Documents フォルダへのパスを取得してから、アプリケーション設定を使用して相対サブディレクトリ部分を追加する場合があります。

System.IO.Path クラスには、絶対パス文字列および相対パス文字列の処理を支援する静的メンバが用意されているのに対し、System.IO.File クラスと System.IO.Directory クラスには、実際にファイルとディレクトリを直接処理する静的メンバが、それぞれ用意されています。

使用例使用例

FileDialog の OpenFileDialog 実装を使用し、ダイアログ ボックスの作成、そのプロパティの設定、およびダイアログ ボックスの表示を実行するコード例を次に示します。この例では、ShowDialog メソッドを使用してダイアログ ボックスを表示し、DialogResult を返しています。この例では、フォームに Button が配置されており、System.IO 名前空間が追加されている必要があります。

Private Sub button1_Click(sender As
 Object, e As System.EventArgs)
    Dim myStream As Stream
    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() = DialogResult.OK Then
        myStream = openFileDialog1.OpenFile()
        If Not (myStream Is
 Nothing) Then
            ' Insert code to read the stream here.
            myStream.Close()
        End If
    End If
End Sub

private void button1_Click(object sender, System.EventArgs
 e)
{
    Stream myStream;
    OpenFileDialog openFileDialog1 = new OpenFileDialog();

    openFileDialog1.InitialDirectory = "c:\\" ;
    openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
 ;
    openFileDialog1.FilterIndex = 2 ;
    openFileDialog1.RestoreDirectory = true ;

    if(openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        if((myStream = openFileDialog1.OpenFile())!= null)
        {
            // Insert code to read the stream here.
            myStream.Close();
        }
    }
}

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() == ::DialogResult::OK
 )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr
 )
         {
            // Insert code to read the stream here.
            myStream->Close();
         }
      }
   }
protected void button1_Click(Object sender,
 System.EventArgs e)
{
    Stream myStream;
    OpenFileDialog openFileDialog1 = new OpenFileDialog();
    openFileDialog1.set_InitialDirectory("c:\\");
    openFileDialog1.set_Filter(
        "txt files (*.txt)|*.txt|All files (*.*)|*.*");
    openFileDialog1.set_FilterIndex(2);
    openFileDialog1.set_RestoreDirectory(true);
    if (openFileDialog1.ShowDialog().Equals(get_DialogResult().OK))
 {
        if ((myStream = openFileDialog1.OpenFile()) != null)
 {
            // Insert code to read the stream here.
            myStream.Close();
        }
    }
} //button1_Click
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Windows.Forms.CommonDialog
        System.Windows.Forms.FileDialog
           System.Windows.Forms.OpenFileDialog
           System.Windows.Forms.SaveFileDialog
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
FileDialog メンバ
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader

FileDialog フィールド


プロテクト フィールドプロテクト フィールド

  名前 説明
プロテクト フィールド EventFileOk FileOk イベントを所有しています。
参照参照

関連項目

FileDialog クラス
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader

FileDialog プロパティ


パブリック プロパティパブリック プロパティ

( プロテクト プロパティ も参照)
  名前 説明
パブリック プロパティ AddExtension ユーザーが拡張子を指定しない場合、ダイアログ ボックスがファイル名に自動的に拡張子を付けるかどうかを示す値を取得または設定します。
パブリック プロパティ CheckFileExists 存在しないファイルの名前をユーザーが指定した場合に、ダイアログ ボックスが警告を表示するかどうかを示す値を取得または設定します。
パブリック プロパティ CheckPathExists 存在しないパスをユーザーが指定したときに、ダイアログ ボックスに警告を表示するかどうかを示す値を取得または設定します。
パブリック プロパティ Container  Component を格納している IContainer を取得します。 ( Component から継承されます。)
パブリック プロパティ Site  Component の ISite を取得または設定します。 ( Component から継承されます。)
パブリック プロパティ SupportMultiDottedExtensions 複数のファイル名拡張子を持つファイルの表示および保存をダイアログ ボックスがサポートするかどうかを示す値を取得または設定します。
パブリック プロパティ Tag  コントロールに関するデータを格納するオブジェクトを取得または設定します。 ( CommonDialog から継承されます。)
パブリック プロパティ Title ファイル ダイアログ ボックスのタイトルを取得または設定します。
パブリック プロパティ ValidateNames ダイアログ ボックスが有効な Win32 ファイル名だけを受け入れるかどうかを示す値を取得または設定します。
プロテクト プロパティプロテクト プロパティ
参照参照

関連項目

FileDialog クラス
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader

FileDialog メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド Dispose  オーバーロードされます。 Component によって使用されているリソースを解放します。 ( Component から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。)
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 ( Object から継承されます。)
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 ( MarshalByRefObject から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。)
パブリック メソッド Reset オーバーライドされます。 すべてのプロパティを既定値にリセットします。
パブリック メソッド ShowDialog  オーバーロードされます。 コモン ダイアログ ボックスを実行します。 ( CommonDialog から継承されます。)
パブリック メソッド ToString オーバーライドされます。 このオブジェクトの文字列形式を示します。
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

FileDialog クラス
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader

FileDialog メンバ

ユーザーがファイルを選択するダイアログ ボックスを表示します。

FileDialog データ型で公開されるメンバを以下の表に示します。


プロテクト フィールドプロテクト フィールド
  名前 説明
プロテクト フィールド EventFileOk FileOk イベントを所有しています。
パブリック プロパティパブリック プロパティ
( プロテクト プロパティ も参照)
  名前 説明
パブリック プロパティ AddExtension ユーザーが拡張子を指定しない場合、ダイアログ ボックスがファイル名に自動的に拡張子を付けるかどうかを示す値を取得または設定します。
パブリック プロパティ CheckFileExists 存在しないファイルの名前をユーザーが指定した場合に、ダイアログ ボックスが警告を表示するかどうかを示す値を取得または設定します。
パブリック プロパティ CheckPathExists 存在しないパスをユーザーが指定したときに、ダイアログ ボックスに警告を表示するかどうかを示す値を取得または設定します。
パブリック プロパティ Container  Component を格納している IContainer を取得します。(Component から継承されます。)
パブリック プロパティ Site  Component の ISite を取得または設定します。(Component から継承されます。)
パブリック プロパティ SupportMultiDottedExtensions 複数のファイル名拡張子を持つファイルの表示および保存をダイアログ ボックスがサポートするかどうかを示す値を取得または設定します。
パブリック プロパティ Tag  コントロールに関するデータを格納するオブジェクトを取得または設定します。 (CommonDialog から継承されます。)
パブリック プロパティ Title ファイル ダイアログ ボックスのタイトルを取得または設定します。
パブリック プロパティ ValidateNames ダイアログ ボックスが有効な Win32 ファイル名だけを受け入れるかどうかを示す値を取得または設定します。
プロテクト プロパティプロテクト プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド も参照)
  名前 説明
パブリック メソッド CreateObjRef  リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 (MarshalByRefObject から継承されます。)
パブリック メソッド Dispose  オーバーロードされます。 Component によって使用されているリソースを解放します。 (Component から継承されます。)
パブリック メソッド Equals  オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。)
パブリック メソッド GetLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド GetType  現在のインスタンスの Type を取得します。 (Object から継承されます。)
パブリック メソッド InitializeLifetimeService  対象のインスタンスの有効期間ポリシーを制御する、有効期間サービス オブジェクトを取得します。 (MarshalByRefObject から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。)
パブリック メソッド Reset オーバーライドされます。 すべてのプロパティを既定値にリセットします。
パブリック メソッド ShowDialog  オーバーロードされます。 コモン ダイアログ ボックスを実行します。 (CommonDialog から継承されます。)
パブリック メソッド ToString オーバーライドされます。 このオブジェクトの文字列形式を示します。
プロテクト メソッドプロテクト メソッド
パブリック イベントパブリック イベント
参照参照

関連項目

FileDialog クラス
System.Windows.Forms 名前空間
CommonDialog クラス
OpenFileDialog
SaveFileDialog
System.IO.Path
System.IO.File
System.IO.Directory
System.Environment
Application クラス
Microsoft.Win32.Registry
System.Resources.ResourceReader


このページでは「.NET Framework クラス ライブラリ リファレンス」からFileDialogを検索した結果を表示しています。
Weblioに収録されているすべての辞書からFileDialogを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からFileDialog を検索

英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「FileDialog」の関連用語

FileDialogのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



FileDialogのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS