OpenFileDialog クラス

OpenFileDialog クラス

ユーザーがファイルを開くために使用できるコントロールを表示する OpenFileDialog クラス互換のコモンダイアログボックスです。

この型のすべてのメンバの一覧については、OpenFileDialog メンバ を参照してください。

System.Object
 System.MarshalByRefObject
  System.ComponentModel.Component
   System.Windows.Forms.Control
    System.Windows.Forms.ScrollableControl
     System.Windows.Forms.ContainerControl
      System.Windows.Forms.Form
       SmartPDA.Windows.Forms.FileDialogBase
        SmartPDA.Windows.Forms.OpenFileDialog

[C#]
public class OpenFileDialog : FileDialogBase

スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説
Windows Mobile 環境の OpenFileDialog コモンダイアログボックスは \My Documents 以外のファイルを指定する事が出来ませんが、このダイアログボックスは読み込み可能なフォルダにあるファイルすべてを指定する事が出来ます。
このクラスを使用すると、ファイルが存在するかどうかを確認してから、そのファイルを開くことができます。

OpenFileDialog ダイアログボックスは PocketPC プラットフォームで実行されている場合、ストレージカード挿入などのイベントを自動的に検知してファイル・フォルダ一覧の表示を再描画します。

標準の OpenFileDialog インスタンスと違い OpenFileDialog クラス使用後は Dispose メソッドを呼ぶ必要があります。

使用例
[C#] OpenFileDialog の新しいインスタンスを FileDialogFactory により作成し、いくつかのプロパティを設定し、OpenFileDialog.ShowDialog メソッドを使用してダイアログボックスを表示する例を次に示します。この例は、フォームに Button が配置されていることを前提にしています。
このコードは、PocketPC プラットフォーム、Smartphon プラットフォームのどちらのプラットフォームでも動作します。

private void mOpenButton_Click(object sender, EventArgs e)
{
	SmartPDA.Windows.Forms.OpenFileDialog fd = SmartPDA.Windows.Forms.FileDialogFactory.MakeOpenFileDialog();

	fd.InitialDirectory = @"\My Documents";
	fd.FileName = "foo.txt";
	fd.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*";
	fd.FilterIndex = 1;

	if (fd.ShowDialog() == DialogResult.OK)
	{
		this.FileNameDisplay.Text = fd.FileName;
		MessageBox.Show(string.Format("Selected! : {0}\nPath : {1}", fd.DialogResult.ToString(), fd.FileName));
	}
	else
	{
		MessageBox.Show(string.Format("Selected! : {0}\nFileName : {1}", fd.DialogResult.ToString(), fd.FileName));
	}

	fd.Dispose();
}
[Visual Basic, C++, JScript] Visual Basic, C++, JScript のサンプルはありません。

必要条件

名前空間 : SmartPDA.Windows.Forms

プラットフォーム : .NET Compact Framework - Windows CE.NET

アセンブリ : SmartPDA.Windows.Forms ( FileDialog.dll 内 )

参照 :
OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

OpenFileDialog メンバ

OpenFileDialog クラスは、System.Windows.Forms.Form から継承している FileDialogBase クラスを継承しているクラスです。ここでの解説においては OpenFileDialog クラス独自のプロパティ、メソッドの解説を行い、継承している Form クラスのプロパティおよびメソッドの解説は行いません。

パブリック コンストラクタ
OpenFileDialog コンストラクタ OpenFileDialog クラスの新規インスタンスを初期化します。


パブリック プロパティ
Activation ファイル・フォルダ一覧で項目をアクティブにするためにユーザーが実行する必要のあるアクションの種類を取得または設定します。
AlternativeRootLabel ルートフォルダで表示されるラベルを設定、取得します。
CheckFileExists 存在しないファイルの名前をユーザーが指定した場合に、ダイアログ ボックスが警告を表示するかどうかを示す値を取得または設定します。
CheckPathExists 存在しないパスをユーザーが指定したときに、ダイアログ ボックスに警告を表示するかどうかを示す値を取得または設定します。
FastSearch ファイル検索を高速化する値を設定、取得します。
FileName ファイル ダイアログ ボックスで選択されたファイル名を含む文字列を取得または設定します。
Filter ダイアログ ボックスの [ファイルの種類] ボックスに表示される選択肢を決定する、現在のファイル名のフィルタ文字列を取得または設定します。
FilterIndex ファイル ダイアログ ボックスで現在選択されているフィルタのインデックスを取得または設定します。
Font ファイル ダイアログ ボックスで表示するフォントを取得または設定します。
FullRowSelect ファイル・フォルダ一覧で項目をクリックするとそのすべてのサブ項目を選択するかどうかを示す値を取得または設定します。
IconNegative ReadFileIcon プロパティの値が true のときに、ファイルから読み込むアイコンの色を反転させるかどうかを取得または設定します。。
InitialDirectory ファイル ダイアログ ボックスに表示される起動ディレクトリを取得または設定します。
InitialDirectoryAsRoot InitialDirectory に設定されているパスをルートとしてダイアログを設定します。
ReadFileIcon ファイル・フォルダ一覧のアイコンをファイルから読み込み表示します。
ReadFolder ファイル・フォルダ一覧でのフォルダの読み込みの制御を、取得または設定します。false を設定すると一覧にフォルダが表示されなくなります。
Title ファイル ダイアログ ボックスのタイトルを取得または設定します。


OpenFileDialog コンストラクタ

OpenFileDialog クラスの新規インスタンスを初期化します。

[C#]
public string OpenFileDialog();

解説
既定のコンストラクタは、すべてのフィールドを初期値に設定します。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

Activation

ファイル・フォルダ一覧で項目をアクティブにするためにユーザーが実行する必要のあるアクションの種類を取得または設定します。

[C#]
public Activation Activation { get; set; }

プロパティ値
ItemActivation 値の 1 つ。既定値は ItemActivation.OneClick です。

解説
Activation プロパティを使用すると、 ファイル・フォルダ一覧の項目をユーザーがアクティブにする方法を指定できます。 ファイル・フォルダ一覧の項目をアクティブにすることは、単に項目を選択することとは異なります。項目を選択すると、アクションは通常 ItemActivate イベントのイベント ハンドラで実行されます。たとえば、項目がアクティブなときに、ファイルを開いたり、項目を編集するためのダイアログ ボックスを表示したりします。通常、ユーザーが項目をダブルクリックしてアクティブにします。 Activation プロパティが ItemActivation.OneClick に設定されている場合は、項目を一度クリックするとその項目はアクティブになります。 Activation プロパティを ItemActivation.TwoClick に設定することは、2 回のクリックの場合はクリックとクリックの間に存続期間があるため、標準のダブルクリックとは異なります。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

AlternativeRootLabel

ルートフォルダで表示されるラベルを設定、取得します。

[C#]
public string AlternativeRootLabel { get; set; }

プロパティ値
OpenFileDialog でルートフォルダで表示される文字列を含む値。既定値は String.Empty です。

解説
通常ルートフォルダで表示される文字列はプラットフォームごとに決定された値が使用されますが、このプロパティに値を設定する事でルートフォルダで表示される文字列を変更する事が出来ます。

通常ルートフォルダで表示される文字列
プラットフォーム 文字列
PocketPC マイ ポケットPC
Smartphone マイ フォン
その他 マイデバイス


必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

CheckFileExists

存在しないファイルの名前をユーザーが指定した場合に、ダイアログ ボックスが警告を表示するかどうかを示す値を取得または設定します。

[C#]
public bool CheckFileExists { get; set; }

プロパティ値
存在しないファイルの名前をユーザーが指定した場合にダイアログ ボックスが警告を表示する場合は true 。それ以外の場合は false 。既定値は true です。

解説
存在しないファイルの名前をユーザーに選択可能にする場合は false にします。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

CheckPathExists

存在しないパスをユーザーが指定したときに、ダイアログ ボックスに警告を表示するかどうかを示す値を取得または設定します。

[C#]
public bool CheckPathExists { get; set; }

プロパティ値
存在しないパスをユーザーが指定したときに、ダイアログ ボックスに警告が表示される場合は true 。それ以外の場合は false 。既定値は true です。

解説
存在しないパスを InitialDirectory にユーザーが指定したときに、既定値では警告が表示されますが false を設定すると、警告が表示されずに存在するパスが見つかるまでフォルダ階層をさかのぼります。InitialDirectoryAsRoot プロパティを true にした場合で、ユーザが指定したフォルダが存在していない場合は、必ず警告が表示されます。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

FastSearch

ファイル検索を高速化する値を設定、取得します。

[C#]
public bool FastSearch { get; set; }

プロパティ値
Bool 値。既定値は false です。

解説
FastSearch プロパティを true にする事で、ファイルの種類を検索せずファイル表示を若干高速にします。ファイル数が多くなれば違いが出ますが、通常はあまり早くなりません。

FastSearch プロパティを true にすると、ファイル・フォルダ一覧でファイルの種類は「ファイル」と表示されるようになります。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

FileName

ファイル ダイアログ ボックスで選択されたファイル名を含む文字列を取得または設定します。

[C#]
public string FileName { get; set; }

プロパティ値
OpenFileDialog でダイアログ タイトルに表示される文字列を含む値。既定値は String.Empty です。

解説
ファイル名はファイル パスと拡張子の両方を含みます。ファイルが選択されなかった場合、このメソッドは空の文字列 ("") を返します。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.Forms.Form メンバ

Filter

ダイアログ ボックスの [ファイルの種類] ボックスに表示される選択肢を決定する、現在のファイル名のフィルタ文字列を取得または設定します。

[C#]
public string Filter { get; set; }

プロパティ値
ダイアログ ボックスで使用できるファイル フィルタ処理オプション。

解説
各フィルタ処理オプションのフィルタ文字列には、フィルタの説明、続いて縦棒 (|) とフィルタ パターンが含まれます。異なったフィルタ処理オプションの文字列は縦棒で区切られます。

フィルタ処理文字列が "Text files (*.txt)|*.txt|All files (*.*)|*.*" の場合の例を次に示します。

ファイルの種類をセミコロンで区切ることによって、複数のフィルタ パターンをフィルタに追加できます。たとえば、"Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*" のように指定します。

ユーザーに最初に表示するフィルタ処理オプションを設定するには、 FilterIndex プロパティを使用します。

使用例
private void mOpenButton_Click(object sender, EventArgs e)
{
	SmartPDA.Windows.Forms.OpenFileDialog fd = SmartPDA.Windows.Forms.FileDialogFactory.MakeOpenFileDialog();

	fd.InitialDirectory = @"\My Documents";
	fd.FileName = "foo.txt";
	fd.Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*";
	fd.FilterIndex = 1;

	if (fd.ShowDialog() == DialogResult.OK)
	{
		this.FileNameDisplay.Text = fd.FileName;
		MessageBox.Show(string.Format("{0}\nPath : {1}", fd.DialogResult.ToString(), fd.FileName));
	}
	else
	{
		MessageBox.Show(string.Format("{0}\nFileName : {1}", fd.DialogResult.ToString(), fd.FileName));
	}

	fd.Dispose();
}
[Visual Basic, C++, JScript] Visual Basic, C++, JScript のサンプルはありません。
必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.Forms.OpenFileDialog メンバ

FilterIndex

ファイル ダイアログ ボックスで現在選択されているフィルタのインデックスを取得または設定します。

[C#]
public int FilterIndex { get; set; }

プロパティ値
ファイル ダイアログ ボックスで現在選択されているフィルタのインデックスを含む値。既定値は、1 です。

解説
ユーザーに最初に表示するフィルタ処理オプションを設定するには、 FilterIndex プロパティを使用します。また、ファイル ダイアログ ボックスを表示した後でも、 FilterIndex の値を使用すると、選択されたフィルタに応じて特別なファイル処理を実行できます。

メモ 1 番目のフィルタ エントリのインデックス値は 1 です。

使用例
参照 Filter プロパティ

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.Forms.OpenFileDialog メンバ

Font

ファイル ダイアログ ボックスで表示するフォントを取得または設定します。

[C#]
public System.Drawing.Font Font { get; set; }

プロパティ値
コントロールによって表示されるテキストに適用される Font オブジェクト。既定値は System.Drawing.Font(FontFamily.GenericSansSerif, 9F, System.Drawing.FontStyle.Regular) です。

解説
FontFamily.GenericSansSerif フォントがユーザーのコンピュータにインストールされていない場合は、DEFAULT_GUI_FONT が使用されます。DEFAULT_GUI_FONT は、メニューやダイアログ ボックスなどのユーザー インターフェイス オブジェクトによって使用される既定のフォントです。

Font プロパティで設定したフォントは、同じフォームに配置されている Label、Button、ListView、ComboBox コントロール等の Font プロパティに設定されます。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

FullRowSelect

項目をクリックするとそのすべてのサブ項目を選択するかどうかを示す値を取得または設定します。

[C#]
public bool FullRowSelect { get; set; }

プロパティ値
項目をクリックすると項目とそのすべてのサブ項目を選択する場合は true 。項目をクリックすると項目だけを選択する場合は false 。既定値は false です。

解説
ファイル・フォルダ一覧の表示モードが、詳細表示が選択されていない場合、 FullRowSelect プロパティは無効です。 FullRowSelect プロパティは、通常 ListView が多数のサブ項目を持つ項目を表示する場合で、コントロールの内容を水平方向にスクロールしたために項目のテキストが表示されていないときに、選択した項目を見えるようにすることが重要な場合に使用されます。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.ListView メンバ

IconNegative

ReadFileIcon プロパティの値が true のときに、ファイルから読み込むアイコンの色を反転させるかどうかを取得または設定します。

[C#]
public bool IconNegative { get; set; }

プロパティ値
Bool 値。既定値は false です。

解説
ReadFileIcon プロパティが true のときに、ファイル・フォルダ一覧にファイルやフォルダのアイコンが表示されます。

Windows Mobile 5.0 以前のプラットフォームでは、ファイルから読み込んだアイコンの色が反転してしまう場合があります。この場合には IconNegative プロパティを true にします。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

InitialDirectory

ファイル ダイアログ ボックスに表示される起動ディレクトリを取得または設定します。

[C#]
public string InitialDirectory { get; set; }

プロパティ値
ファイル ダイアログ ボックスに表示される起動ディレクトリ。既定値は空の文字列 ("") です。

解説
ダイアログ ボックスで最初に選択するフォルダへのパス。または、ユーザーが最後に選択したフォルダへのパス。既定値は空の文字列 ("") です。

解説
InitialDirectory プロパティを設定してからダイアログ ボックスを表示すると、このパスが示すフォルダが最初に選択されます。ただし InitialDirectory プロパティに指定されたフォルダが存在しない場合は、指定されたフォルダの一階層上のフォルダが選択されます。InitialDirectory プロパティに指定されたパスのすべての階層でアクセスできない場合はルートフォルダが選択されます。

ネットワーク共有フォルダへのアクセスを行うには、InitialDirectory プロパティおよび InitialDirectoryAsRoot プロパティを設定してください。
SelectedPath プロパティに \\mycomputer\SharedDocs、InitialDirectoryAsRoot プロパティに true を設定する事で、ネットワークフォルダにアクセスする事が出来ます。しかし OpenFileDialog クラスには、ネットワーク共有フォルダへのログイン機能はありませんので、他のソフトウェアで予めログインしておく必要があります。またネットワークサービスのブラウジングは出来ませんので、InitialDirectory プロパティに \\mycomputer と設定する事は出来ません。

InitialDirectoryAsRoot プロパティを使用して、ユーザがアクセスできるフォルダ階層を制限する事が出来ます。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

InitialDirectoryAsRoot

InitialDirectory に設定されているパスをルートとしてダイアログを設定します。

[C#]
public bool InitialDirectoryAsRoot { get; set; }

プロパティ値
Bool 値。既定値は false です。

解説
InitialDirectoryAsRoot プロパティを true に設定すると、ファイル・フォルダ一覧に表示されるルートフォルダが InitialDirectory プロパティのパスになり、InitialDirectory に設定されているパスの下の階層のフォルダのみにアクセス可能になります。

InitialDirectoryAsRoot プロパティに true を指定した場合で、InitialDirectory プロパティに指定したフォルダにアクセスできない場合はメッセージを表示してダイアログを閉じます。この場合には ShowDialog は DialogResult.About を返します。

ネットワーク共有フォルダへのアクセスを行うには、InitialDirectory プロパティおよび InitialDirectoryAsRoot プロパティを設定してください。
InitialDirectory プロパティに \\mycomputer\SharedDocs、InitialDirectoryAsRoot プロパティに true を設定する事で、ネットワークフォルダにアクセスする事が出来ます。しかし OpenFileDialog クラスには、ネットワーク共有フォルダへのログイン機能はありませんので、他のソフトウェアで予めログインしておく必要があります。またネットワークサービスのブラウジングは出来ませんので、InitialDirectory プロパティに \\mycomputer と設定する事は出来ません。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

ReadFileIcon

ファイル・フォルダ一覧のアイコンをファイルから読み込み表示するかどうかを取得または設定します。

[C#]
public bool ReadFileIcon { get; set; }

プロパティ値
Bool 値。既定値は true です。

解説
ReadFileIcon プロパティを true に設定すると、ファイルそれぞれのアイコンを表示するように指定できます。

ReadFileIcon プロパティを true に設定した場合で、ファイル・フォルダ一覧に表示されるファイル数と種類が多い場合、ファイル・フォルダ一覧の描画スピードが大幅に低下します。

メモ

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

ReadFolder

ファイル・フォルダ一覧でのフォルダの読み込むかどうかを取得または設定します。

[C#]
public bool ReadFolder { get; set; }

プロパティ値
Bool 値。既定値は true です。

解説
ReadFolder プロパティに false を設定すると、ファイル・フォルダ一覧にフォルダが表示されなくなります。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間

Title

ファイル ダイアログ ボックスのタイトルを取得または設定します。

[C#]
public string AlternativeRootLabel { get; set; }

プロパティ値
ファイル ダイアログ ボックスのタイトル。既定値は空の文字列 ("") です。

解説
文字列は、ダイアログ ボックスのタイトル バーに配置されます。タイトルが空の文字列の場合、システムは既定のタイトル、つまり "名前を付けて保存" または "開く" を使用します。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.Forms.Form メンバ

FileOK

ファイル・フォルダが選択されたときに実行されるイベント

[C#]
public event FileOK { get; set; }

プロパティ値

解説
ファイルやフォルダが選択されたときに実行されるイベントです。各ダイアログの Closed イベント内で実行されます。

必要条件

プラットフォーム : .NET Compact Framework - Windows CE.NET

参照 :
OpenFileDialog クラス | OpenFileDialog メンバ | SmartPDA.Windows.Forms 名前空間 | System.Windows.Forms.Form メンバ

Tag: ソフトウェア DLL ファイルの選択