12,925
回編集
325行目: | 325行目: | ||
<br> | <br> | ||
==== | ==== FileTypeFilter (ファイルの種類) の設定 ==== | ||
ダイアログで開くことができるファイルの種類は、<code> | ダイアログで開くことができるファイルの種類は、<code>FilePickerOpenOptions</code>クラスの<code>FileTypeFilter</code>プロパティにフィルタ文字列を設定する。<br> | ||
<br> | <br> | ||
フィルタ文字列の設定を以下に示す。<br> | フィルタ文字列の設定を以下に示す。<br> | ||
* | * FilePickerOpenOptionsクラス (オプションクラス) の使用 | ||
*: | *: FilePickerOpenOptionsクラスのインスタンスを作成し、そのFileTypeFilterプロパティにフィルタを設定する。 | ||
* | *: <br> | ||
*: | * FilePickerFileTypeクラスの使用 | ||
* | *: 各フィルタはFilePickerFileTypeオブジェクトとして定義されます。コンストラクタの引数にフィルタの名前を指定する。 | ||
*: | *: <br> | ||
* Patterns | |||
*: Patternsプロパティに、フィルタに含める拡張子のパターンを指定する。 | |||
*: <br> | |||
* 複数の拡張子 | * 複数の拡張子 | ||
*: 1つのフィルタに複数の拡張子を含めることができる。 | *: 1つのフィルタに複数の拡張子を含めることができる。 | ||
*: 例えば、"HTMLファイル"フィルタでは、"*.html" と "*.htm" の両方を指定する。 | |||
*: <br> | |||
* 全てのファイル | * 全てのファイル | ||
*: 全てのファイルを表す場合は、拡張子として | *: 全てのファイルを表す場合は、拡張子として "*" を使用する。 | ||
*: 例えば、"すべてのファイル"フィルタがこれに該当する。 | |||
*: <br> | |||
* フィルタの順序 | * フィルタの順序 | ||
*: リストに追加した順序でユーザに表示される。 | *: リストに追加した順序でユーザに表示される。 | ||
*: 以下の例では、"すべてのファイル"が最初に表示されて、以降"テキストファイル"、"XMLファイル"等の順で表示される。 | |||
<br> | |||
この設定により、ユーザは様々なファイルタイプから選択できる。<br> | |||
特定のファイル形式に絞り込む場合や全てのファイルを表示することもできる。<br> | |||
<br> | |||
<br> | <br> | ||
<syntaxhighlight lang="c#"> | <syntaxhighlight lang="c#"> | ||
var storageProvider = TopLevel.GetTopLevel(this)?.StorageProvider; | |||
var options = new FilePickerOpenOptions | |||
{ | { | ||
FileTypeFilter = new[] | |||
{ | { | ||
new FilePickerFileType("すべてのファイル") { Patterns = new[] { "*" } }, | |||
new FilePickerFileType("テキストファイル") { Patterns = new[] { "*.txt" } }, | |||
new FilePickerFileType("XMLファイル") { Patterns = new[] { "*.xml" } }, | |||
new FilePickerFileType("HTMLファイル") { Patterns = new[] { "*.html", "*.htm" } }, | |||
new FilePickerFileType("Webファイル") { Patterns = new[] { "*.html", "*.htm", "*.css", "*.js" } }, | |||
new FilePickerFileType("XMLファイルとHTMLファイル") { Patterns = new[] { "*.xml", "*.html", "*.htm" } }, | |||
new FilePickerFileType("イメージファイル") { Patterns = new[] { "*.png", "*.jpg", "*.gif", "*.bmp", "*.webp" } } | |||
} | |||
}; | |||
var file = await storageProvider.OpenFilePickerAsync(options); | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<br> | <br> | ||
==== 使用例 ==== | ==== 使用例 ==== | ||
以下の例では、FilePickerOpenOptionsクラスを使用してstorageProviderクラスを設定した後、ディレクトリ選択ダイアログを開いている。<br> | 以下の例では、FilePickerOpenOptionsクラスを使用してstorageProviderクラスを設定した後、ディレクトリ選択ダイアログを開いている。<br> |