次の方法で共有


FileSavePicker.FileTypeChoices プロパティ

定義

ユーザーがファイルに割り当てることができる有効なファイルの種類のコレクションを取得します。

public:
 property IMap<Platform::String ^, IVector<Platform::String ^> ^> ^ FileTypeChoices { IMap<Platform::String ^, IVector<Platform::String ^> ^> ^ get(); };
IMap<winrt::hstring, IVector<winrt::hstring> const&> FileTypeChoices();
public IDictionary<string,IList<string>> FileTypeChoices { get; }
var iMap = fileSavePicker.fileTypeChoices;
Public ReadOnly Property FileTypeChoices As IDictionary(Of String, IList(Of String))

プロパティ値

IMap<String,IVector<String>>

IDictionary<String,IList<String>>

IMap<Platform::String,IVector<Platform::String>>

IMap<winrt::hstring,IVector<winrt::hstring>>

ユーザーがファイルの保存に使用できる有効なファイルの種類 (拡張子) のコレクションを含む FilePickerFileTypesOrderedMap オブジェクト。 このコレクション内の各要素は、表示名をファイル名拡張子の対応するコレクションにマップします。 キーは 1 つの文字列で、値は 1 つ以上の拡張選択肢を表す文字列のリスト/ベクターです。

ファイル ピッカーのサンプルでは、表示名を使用してファイルの種類の選択肢を追加する方法を示します。

FileSavePicker savePicker = new FileSavePicker();
savePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
// Dropdown of file types the user can save the file as
savePicker.FileTypeChoices.Add("Plain Text", new List<string>() { ".txt" });
// Default file name if the user does not type one in or select a file to replace
savePicker.SuggestedFileName = "New Document";
auto plainTextExtensions{ winrt::single_threaded_vector<winrt::hstring>() };
plainTextExtensions.Append(L".txt");

savePicker.FileTypeChoices().Insert(L"Plain Text", plainTextExtensions);
savePicker.SuggestedFileName(L"New Document");

FileSavePicker に複数の FileTypeChoices を追加した場合、最初に追加されるのは既定のファイルの種類です。 この既定値は、ユーザーがファイル ピッカーを開いたときに選択されます。 既定のファイルの種類は、ユーザーがファイル ピッカーでファイルの種類を変更しない場合に使用されます。 この例では、選択されているラジオ ボタンに基づいて FileTypeChoices エントリが追加されます。

if (radioButtonRichText.IsChecked)
{
    savePicker.FileTypeChoices.Add("Rich text", new List<string>() { ".rtf" });
    savePicker.FileTypeChoices.Add("Word document", new List<string>() { ".docx" });
    savePicker.FileTypeChoices.Add("Plain text", new List<string>() { ".txt" });
}
else if (radioButtonWordDoc.IsChecked)
{
    savePicker.FileTypeChoices.Add("Word document", new List<string>() { ".docx" });
    savePicker.FileTypeChoices.Add("Plain text", new List<string>() { ".txt" });
    savePicker.FileTypeChoices.Add("Rich text", new List<string>() { ".rtf" });
}
else // default to plain text file type
{
    savePicker.FileTypeChoices.Add("Plain text", new List<string>() { ".txt" });
    savePicker.FileTypeChoices.Add("Rich text", new List<string>() { ".rtf" });
    savePicker.FileTypeChoices.Add("Word document", new List<string>() { ".docx" });
}

注釈

一部のアプリでは、クラウド ストレージ プロバイダーなど、ファイル形式を処理するためにファイル形式を理解する必要はありません。 したがって、 FileOpenPicker.FileTypeFilter コレクションでは、ファイルワイルドカード文字 "*" を使用できます。 ただし、ファイルを記述するには、その形式に関する知識が必要です。 その結果、FileSavePicker.FileTypeChoices ではワイルドカードはサポートされません。

ファイルの種類の分類として 1 つの表示名には、それをサポートする複数のファイルの種類が含まれる場合があります。 たとえば、"HTML ページ" の表示名は、".htm" または ".html" 拡張子で保存できます。 そのため、 FilePickerFileTypesOrderedMap 内の各エントリの値は、文字列の順序付きリスト (ベクター) であり、拡張をベクターに配置する順序で UI に表示されます。

適用対象

こちらもご覧ください