次の方法で共有


FileOpenPicker クラス

定義

ユーザーがファイルを選択して開くことができる 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
継承
Object Platform::Object IInspectable 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()

選択操作が完了し、アプリが中断された後にユーザーがアプリから離れた場合に、選択操作を再開して、ユーザーが選択したファイルを取得します。

適用対象

こちらもご覧ください