[C#][Windows Formsアプリ][OpenFileDialog] InitialDirectory プロパティで最初に表示するディレクトリを指定

スポンサーリンク

はじめに

Windows Forms アプリケーションで OpenFileDialog を使用する際、ダイアログを最初に開いたときに表示するディレクトリを指定したい場合があります。そんな時に役立つのが InitialDirectory プロパティです。この記事では、OpenFileDialog の InitialDirectory プロパティについて、初心者の方にもわかりやすく解説します。InitialDirectory プロパティを使うことで、ユーザーがファイル選択ダイアログを開いた際に、特定のディレクトリを初期表示することができます。具体的なコード例を交えながら、その使い方を見ていきましょう。

InitialDirectory プロパティとは?

InitialDirectory プロパティは、OpenFileDialog が最初に開くディレクトリを指定するためのプロパティです。このプロパティを設定することで、ユーザーがファイルを探す際の手間を省き、よりスムーズな操作を提供できます。

InitialDirectory プロパティの使い方 (コード例)

特定のフォルダを初期ディレクトリに設定する

最も基本的な使い方は、特定のフォルダパスを InitialDirectory プロパティに設定することです。

using System;
using System.Windows.Forms;

namespace OpenFileDialogSample
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

        private void openButton_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Title = "ファイルを開く";
            openFileDialog.Filter = "テキストファイル(*.txt)|*.txt|すべてのファイル(*.*)|*.*";

            // 初期ディレクトリをデスクトップに設定
            openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                string filePath = openFileDialog.FileName;
                MessageBox.Show("選択されたファイル: " + filePath);
            }
        }
    }
}
実行例

実行例

解説:

  • openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
    InitialDirectory プロパティに Environment.GetFolderPath(Environment.SpecialFolder.Desktop) を設定することで、ファイル選択ダイアログを最初に開いたときにデスクトップが表示されます。Environment.GetFolderPath() メソッドを使うと、「デスクトップ」「マイドキュメント」など、システムが管理する特別なフォルダのパスを簡単に取得できます。

絶対パスで初期ディレクトリを指定することも可能です。

private void openButton_Click(object sender, EventArgs e)
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.Title = "ファイルを開く";
    openFileDialog.Filter = "テキストファイル(*.txt)|*.txt|すべてのファイル(*.*)|*.*";

    // 初期ディレクトリを C:\MyFolder に設定
    openFileDialog.InitialDirectory = @"C:\MyFolder";

    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        string filePath = openFileDialog.FileName;
        MessageBox.Show("選択されたファイル: " + filePath);
    }
}

解説:

openFileDialog.InitialDirectory = @”C:\MyFolder”;: InitialDirectory プロパティに “C:\MyFolder” を設定することで、ファイル選択ダイアログを最初に開いたときに C:\MyFolder が表示されます。

注意点:

指定したディレクトリが存在しない場合、OpenFileDialog は既定のディレクトリ (通常は「マイドキュメント」) を表示します。

まとめ

OpenFileDialog の InitialDirectory プロパティは、ファイル選択ダイアログを最初に開いたときに表示するディレクトリを指定するための便利なプロパティです。この記事で紹介したコード例を参考に、InitialDirectory プロパティを効果的に活用し、ユーザーにとって使いやすい Windows Forms アプリケーションを作成してください。

Please follow and like us:

コメント

タイトルとURLをコピーしました