C#「ファイルを開く」ダイアログを表示する

スポンサーリンク

CommonDialog である「ファイルを開く」ダイアログを表示するには、System.Windows.Forms.OpenFileDialog クラスの ShowDialog メソッドを使用します。ShowDialog メソッドは、どのボタンを選択したかを戻り値にて取得可能です。

以下の例では、オプションを担うプロパティが列挙されていますが、必要ないものは削ってください。

サンプルコード

以下にサンプルコードを示します。

C# 全般
    // OpenFileDialog の新しいインスタンスを生成する (デザイナから追加している場合は必要ない)
    OpenFileDialog openFileDialog1 = new OpenFileDialog();

    // ダイアログのタイトルを設定する
    openFileDialog1.Title = "ダイアログのタイトルをココに書く";

    // 初期表示するディレクトリを設定する
    openFileDialog1.InitialDirectory = @"C:\";

    // 初期表示するファイル名を設定する
    openFileDialog1.FileName = "初期表示するファイル名をココに書く";

    // ファイルのフィルタを設定する
    openFileDialog1.Filter = "テキスト ファイル|*.txt;*.log|すべてのファイル|*.*";

    // ファイルの種類 の初期設定を 2 番目に設定する (初期値 1)
    openFileDialog1.FilterIndex = 2;

    // ダイアログボックスを閉じる前に現在のディレクトリを復元する (初期値 false)
    openFileDialog1.RestoreDirectory = true;

    // 複数のファイルを選択可能にする (初期値 false)
    openFileDialog1.Multiselect = true;

    // [ヘルプ] ボタンを表示する (初期値 false)
    openFileDialog1.ShowHelp = true;

    // [読み取り専用] チェックボックスを表示する (初期値 false)
    openFileDialog1.ShowReadOnly = true;

    // [読み取り専用] チェックボックスをオンにする (初期値 false)
    openFileDialog1.ReadOnlyChecked = true;

    // 存在しないファイルを指定した場合は警告を表示する (初期値 true)
    //openFileDialog1.CheckFileExists = true;

    // 存在しないパスを指定した場合は警告を表示する (初期値 true)
    //openFileDialog1.CheckPathExists = true;

    // 拡張子を指定しない場合は自動的に拡張子を付加する (初期値 true)
    //openFileDialog1.AddExtension = true;

    // 有効な Win32 ファイル名だけを受け入れるようにする (初期値 true)
    //openFileDialog1.ValidateNames = true;

    // ダイアログを表示し、戻り値が [OK] の場合は、選択したファイルを表示する
    if (openFileDialog1.ShowDialog() == DialogResult.OK) {
        MessageBox.Show(openFileDialog1.FileName);

        // Multiselect が true の場合はこのように列挙する
        //foreach (string nFileName in openFileDialog1.FileNames) {
        //    MessageBox.Show(nFileName);
        //}
    }

    // 不要になった時点で破棄する (正しくは オブジェクトの破棄を保証する を参照)
    openFileDialog1.Dispose();

関連するリファレンス

準備中です。

スポンサーリンク