FileOpenPicker クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ユーザーがファイルを選択して開くことができる UI 要素を表します。
デスクトップ アプリでは、UI を表示する方法でこのクラスのインスタンスを使用する前に、オブジェクトを所有者のウィンドウ ハンドルに関連付ける必要があります。 詳細とコード例については、「 CoreWindow に依存する WinRT UI オブジェクトを表示する」を参照してください。
public ref class FileOpenPicker sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class FileOpenPicker final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class FileOpenPicker final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class FileOpenPicker final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class FileOpenPicker
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class FileOpenPicker
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class FileOpenPicker
function FileOpenPicker()
Public NotInheritable Class FileOpenPicker
- 継承
- 属性
Windows の要件
デバイス ファミリ |
Windows 10 (10.0.10240.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v1.0 で導入)
|
例
ファイル ピッカーのサンプルでは、アプリがスナップされているかどうかを確認する方法、ファイル ピッカーのプロパティを設定する方法、およびユーザーが 1 つのファイルを選択できるようにファイル ピッカーを表示する方法を示します。
FileOpenPicker openPicker = new FileOpenPicker();
openPicker.ViewMode = PickerViewMode.Thumbnail;
openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
openPicker.FileTypeFilter.Add(".jpg");
openPicker.FileTypeFilter.Add(".jpeg");
openPicker.FileTypeFilter.Add(".png");
StorageFile file = await openPicker.PickSingleFileAsync();
if (file != null)
{
// Application now has read/write access to the picked file
OutputTextBlock.Text = "Picked photo: " + file.Name;
}
else
{
OutputTextBlock.Text = "Operation cancelled.";
}
// Create the picker object and set options
var openPicker = new Windows.Storage.Pickers.FileOpenPicker();
openPicker.viewMode = Windows.Storage.Pickers.PickerViewMode.thumbnail;
openPicker.suggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.picturesLibrary;
// Users expect to have a filtered view of their folders depending on the scenario.
// For example, when choosing a documents folder, restrict the filetypes to documents for your application.
openPicker.fileTypeFilter.replaceAll([".png", ".jpg", ".jpeg"]);
// Open the picker for the user to pick a file
openPicker.pickSingleFileAsync().then(function (file) {
if (file) {
// Application now has read/write access to the picked file
WinJS.log && WinJS.log("Picked photo: " + file.name, "sample", "status");
} else {
// The picker was dismissed with no selected file
WinJS.log && WinJS.log("Operation cancelled.", "sample", "status");
}
});
internal bool EnsureUnsnapped()
{
// FilePicker APIs will not work if the application is in a snapped state.
// If an app wants to show a FilePicker while snapped, it must attempt to unsnap first
bool unsnapped = ((ApplicationView.Value != ApplicationViewState.Snapped) || ApplicationView.TryUnsnap());
if (!unsnapped)
{
NotifyUser("Cannot unsnap the sample.", NotifyType.StatusMessage);
}
return unsnapped;
}
Note
ユーザーが 1 つのファイルまたは複数のファイルを選択しているかどうかに関係なく、常にアプリがスナップされていないこと (または、マップ解除可能) を確認し、ファイル ピッカーのプロパティを設定する必要があります。
IReadOnlyList<StorageFile> files = await openPicker.PickMultipleFilesAsync();
if (files.Count > 0)
{
StringBuilder output = new StringBuilder("Picked files:\n");
// Application now has read/write access to the picked file(s)
foreach (StorageFile file in files)
{
output.Append(file.Name + "\n");
}
OutputTextBlock.Text = output.ToString();
}
else
{
OutputTextBlock.Text = "Operation cancelled.";
}
openPicker.pickMultipleFilesAsync().then(function (files) {
if (files.size > 0) {
// Application now has read/write access to the picked file(s)
var outputString = "Picked files:\n";
for (var i = 0; i < files.size; i++) {
outputString = outputString + files[i].name + "\n";
}
WinJS.log && WinJS.log(outputString, "sample", "status");
} else {
// The picker was dismissed with no selected file
WinJS.log && WinJS.log("Operation cancelled.", "sample", "status");
}
});
注釈
ファイルとフォルダーのファイル ピッカーへのアクセスを開始するには、「 クイック スタート: ファイル ピッカーを使用したファイルへのアクセス」を参照してください。
UWP アプリの外部でこの API を使用する方法については、「 .NET アプリから相互運用 API を呼び出す」を参照してください。
バージョン履歴
Windows のバージョン | SDK バージョン | 追加された値 |
---|---|---|
1903 | 18362 | CreateForUser |
1903 | 18362 | User |
コンストラクター
FileOpenPicker() |
FileOpenPicker の新しいインスタンスを作成します。 デスクトップ アプリでは、UI を表示する方法でこのクラスのインスタンスを使用する前に、オブジェクトを所有者のウィンドウ ハンドルに関連付ける必要があります。 詳細とコード例については、「 CoreWindow に依存する WinRT UI オブジェクトを表示する」を参照してください。 |
プロパティ
CommitButtonText |
ファイルを開くピッカーのコミット ボタンのラベル テキストを取得または設定します。 |
ContinuationData |
アプリがアクティブ化されたときにコンテキストを提供するためにアプリを非アクティブ化する PickSingleFileAndContinue 操作または PickMultipleFilesAndContinue 操作の前に、アプリによって設定される値のセットを取得します。 (Windows Phone 8.x アプリ) |
FileTypeFilter |
ファイルを開くピッカーに表示されるファイルの種類のコレクションを取得します。 |
SettingsIdentifier |
ファイルを開くピッカーの状態に関連付けられている設定識別子を取得または設定します。 |
SuggestedStartLocation |
ファイルを開くピッカーがユーザーに提示するファイルを検索する最初の場所を取得または設定します。 |
User |
FileOpenPicker が作成されたユーザーに関する情報を取得します。 このプロパティは 、マルチユーザー アプリケーションに使用します。 |
ViewMode |
ファイルを開くピッカーがアイテムの表示に使用するビュー モードを取得または設定します。 |
メソッド
CreateForUser(User) |
指定したユーザーの個人用ディレクトリをスコープとする FileOpenPicker を作成します。 このメソッドは 、マルチユーザー アプリケーションに使用します。 |
PickMultipleFilesAndContinue() |
Windows 10時点では廃止されました。代わりに PickSingleFolderAsync を使用してください。 ユーザーが複数のファイルを選択し、非アクティブ化してアプリを再アクティブ化できるように、ファイル ピッカーを表示します。 (Windows Phone 8.x アプリ) |
PickMultipleFilesAsync() |
ユーザーが複数のファイルを選択できるように、ファイル ピッカーを表示します。 (UWP アプリ) |
PickSingleFileAndContinue() |
ユーザーが 1 つのファイルを選択できるようにファイル ピッカーを表示し、操作が完了したときにアプリを非アクティブ化して再アクティブ化する可能性があります。 (Windows Phone 8.x アプリ) |
PickSingleFileAsync() |
ユーザーが 1 つのファイルを選択できるように、ファイル ピッカーを表示します。 |
PickSingleFileAsync(String) |
ユーザーが 1 つのファイルを選択できるように、ファイル ピッカーを表示します。 |
ResumePickSingleFileAsync() |
選択操作が完了し、アプリが中断された後にユーザーがアプリから離れた場合に、選択操作を再開して、ユーザーが選択したファイルを取得します。 |