「ファイルを開く」ダイアログボックスで複数のファイルを開く
「ファイルを開く」ダイアログボックスで複数のファイルを選択する方法を紹介します。
UI
下図のUIを準備します。フォームにButton, OpenFileDialog, TextBoxを配置します。TextBoxのMultiineプロパティをTrueにします。
OpenFileDialogのMultiSelectプロパティをTrueに設定します。この設定により[ファイルを開く]ダイアログで複数のファイルを選択できるようになります。
コード
以下のコードを記述します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace FileMultiOpen
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
DialogResult dr = openFileDialog1.ShowDialog();
if (dr == System.Windows.Forms.DialogResult.OK) {
for (int i = 0; i < openFileDialog1.FileNames.Length; i++) {
textBox1.Text += openFileDialog1.FileNames[i]+"\r\n";
}
}
}
}
}
解説
DialogResult dr = openFileDialog1.ShowDialog();
OpenFileDialogクラスのShowDialog()メソッドにより[ファイルを開く]ダイアログボックスを開きます。ダイアログボックスの操作結果をDialogResult型の戻り値として返します。
if (dr == System.Windows.Forms.DialogResult.OK) {
for (int i = 0; i < openFileDialog1.FileNames.Length; i++) {
textBox1.Text += openFileDialog1.FileNames[i]+"\r\n";
}
}
[ファイルを開く]ダイアログボックスで[開く]ボタンを押して閉じられた場合、ダイアログボックスで選択されたファイルのフルパスをテキストボックスに表示します。ダイアログボックスで複数個選択されたファイル名はOpenFileDialog.FileNamesプロパティに格納されています。
実行結果
プロジェクトを実行します。下図のウィンドウが表示されます。
button1を押します。[ファイルを開く]ダイアログボックスが表示されます。ダイアログボックスで複数のファイルを選択し、[開く]ボタンを押します。
[ファイルを開く]ダイアログボックスで選択したファイルのフルパスがテキストボックスに表示されます。
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用