MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
C Sharpの基礎 - ダイアログのソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
C Sharpの基礎 - ダイアログ
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == ファイルを開くダイアログ(OpenFileDialog)は、ファイルの参照をするための機能を持ったダイアログである。<br> ファイルを開くダイアログは、System.Windows.Forms.FileDialogの派生クラスであり、ファイルを開く操作に必要なプロパティが存在する。<br> ユーザに開くファイルのパスを選択させるにはファイルを開くダイアログ(OpenFileDialog)を使用する。<br><br> == OpenFileDialogの主なプロパティ == ファイルを開くダイアログのプロパティのうち、設定を意識する必要がある主なプロパティは表1に記載した次の15種類である。<br> <center><big>'''表1. OpenFileDialogの主なプロパティ'''</big></center> <center> {| class="wikitable" |- ! プロパティ名 !! データ型 !! 意味 |- | AddExtension || bool || 拡張子が入力されなかった場合、自動的に拡張子を付けるかどうかを設定する。<br>付ける場合はtrue、付けない場合はfalseを指定する。(既定値 : true) |- | CheckFileExists || bool || 存在しないファイルが指定された場合、警告メッセージを表示するかどうかを設定する。<br>表示する場合はtrue、表示しない場合はfalseを指定する。(既定値 : true) |- | CheckPathExists || bool || 存在しないパスが指定された場合、警告メッセージを表示するかどうかを設定する。<br>表示する場合はtrue、表示しない場合はfalseを指定する。(既定値 : true) |- | FileName || string || ユーザが選択したファイルパスを取得する。<br>ダイアログの起動時に初期値として設定することも可能。 |- | FileNames || string[] || ユーザが選択した複数のファイルパスを取得する。<br>Multiselectプロパティがtrueの場合に使用する。<br>Multiselectプロパティがfalseの場合は、FileNameで取得できるファイルパスがFileNames[0]に格納される。 |- | Filter || string || ファイルの種類のプルダウンの選択肢リストを文字列で設定する。 |- | FilterIndex || int || ファイルの種類のプルダウンの選択肢リストの初期選択インデックスを設定する。<br>インデックスの設定値は'''1'''から始まる。<br>ユーザが選択したインデックスを取得することも可能である。(既定値 : 1) |- | InitialDirectory || string || ダイアログの起動時に表示するディレクトリを設定する。<br>設定したディレクトリが存在しない場合は、設定しない場合と同じ動作となる。 |- | Multiselect || bool || 複数のファイルを選択できるかどうかを設定する。<br>複数選択を許可する場合はtrue、許可しない場合はfalseを指定する。(既定値 : false) |- | ReadOnlyChecked || bool || 読み取り専用として開くチェックボックスのON/OFFを設定または取得する。<br>ShowReadOnlyプロパティがtrueの場合のみ有効となる。(既定値 : false) |- | SafeFileName || string || ユーザが選択した拡張子を含むファイル名のみ(パスは含まない)を取得する。 |- | SafeFileNames || string[] || ユーザが選択した複数の拡張子を含むファイル名のみ(パスは含まない)を取得する。<br>Multiselectプロパティがtrueに設定されている場合のみ有効となる。 |- | ShowHelp || bool || ヘルプボタン[?]を表示するかどうかを設定する。<br>表示する場合はtrue、表示しない場合はfalseを指定する。(既定値 : false) |- | ShowReadOnly || bool || 読み取り専用として開くチェックボックスを表示するかどうかを設定する。<br>表示する場合はtrue、表示しない場合はfalseを指定する。(既定値 : false) |- | Title || string || ダイアログのタイトルバーに表示されるタイトル文字列を設定する。 |} </center> <br> 表1で記載したプロパティにおいて、既定値のままでよい(設定が不要)と考えられるプロパティは次の4種類である。<br> 拡張子の自動付加は必要なので既定値のtrueでよい。また、ファイル、ディレクトリの存在確認は必要なので既定値のtrueでよい。<br> * AddExtension * CheckFileExists * CheckPathExists * ShowHelp <br><br> == Filterプロパティ(ファイルの種類)の設定 == ダイアログで開くことができるファイルの種類は、Filterプロパティにフィルタ文字列を設定する。<br> フィルタ文字列は、ファイルの説明とファイルの拡張子をバーティカルバーで区切って表現する。<br> <center>'''表2. フィルタ文字列の設定例'''</center> <center> {| class="wikitable" |- ! フィルタ !! フィルタ文字列 |- | すべてのファイル || "すべてのファイル (*.*)|*.*" |- | テキストファイル || "テキストファイル (*.txt)|*.txt" |- | テキストファイルとすべてのファイル || "テキストファイル (*.txt)|*.txt|すべてのファイル (*.*)|*.*" |- | XMLファイル || "XML ファイル (*.xml)|*.xml" |- | HTMLファイル || "HTML ファイル (*.html, *.htm)|*.html;*.htm" |- | XMLファイルとHTMLファイルとすべてのファイル || "XML ファイル (*.xml)|*.xml|HTML ファイル (*.html, *.htm)|*.html;*.htm|すべてのファイル (*.*)|*.*" |- | イメージファイル || "イメージファイル (*.png, *.jpg, *.gif, *bmp)|*.png;*.jpg;*.gif;*bmp" |} </center> ファイルの種類を複数設定した時、起動時に選択するファイルの種類を指定する場合はFilterIndexプロパティにインデックス値を指定する。(既定値 : 1)<br> プルダウンの先頭の項目は1、2番目の項目は2を設定する。(プルダウンのインデックスは、1から始まるので注意)<br> ユーザが選択したファイルの種類を保持しておき、次回に選択するファイルの種類を設定する場合には便利なプロパティである。<br><br> == サンプルコード == <source lang="cpp"> /// <summary> /// ボタンがクリックされたときのイベント処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { try { // テキストボックスからファイル名(ファイルパス)を取得 string fileName = this.textBox1.Text; // OpenFileDialog クラスのインスタンスを生成 using (OpenFileDialog openFileDialog = new OpenFileDialog()) { // ファイルの種類リストを設定 openFileDialog.Filter = "テキストファイル (*.txt)|*.txt|すべてのファイル (*.*)|*.*"; // テキストボックスにファイル名(ファイルパス)が設定されている場合、そのファイルのディレクトリを初期表示にする if (fileName != string.Empty) { // FileInfoクラスのインスタンスを生成 FileInfo fileInfo = new FileInfo(fileName); // ディレクトリー名 (ディレクトリーパス) を取得 string directoryName = fileInfo.DirectoryName; // 存在する場合は InitialDirectory プロパティに設定 if (Directory.Exists(directoryName)) { openFileDialog.InitialDirectory = directoryName; } } // ファイルの複数選択を許可する //openFileDialog.Multiselect = true; // ダイアログを表示 DialogResult dialogResult = openFileDialog.ShowDialog(); if (dialogResult == DialogResult.Cancel) { // キャンセルされたので終了 return; } // 複数選択した全てのファイル名を取得 //string[] fileNames = openFileDialog.FileNames; // 選択されたファイル名(ファイルパス)をテキストボックスに設定 this.textBox1.Text = openFileDialog.FileName; } } catch (Exception ex) { MessageBox.Show(ex.Message); } } </source> <br><br> __FORCETOC__ [[カテゴリ:C_Sharp]]
C Sharpの基礎 - ダイアログ
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse