FileOpenPicker Класс

Определение

Представляет элемент пользовательского интерфейса, позволяющий пользователю выбирать и открывать файлы.

В классическом приложении перед использованием экземпляра этого класса таким образом, чтобы отобразить пользовательский интерфейс, необходимо связать объект с дескриптором окна владельца. Дополнительные сведения и примеры кода см. в разделе "Отображение объектов пользовательского интерфейса WinRT", зависящих от CoreWindow.

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 IInspectable FileOpenPicker
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

В примере средства выбора файлов показано, как проверить, прикреплено ли приложение, как задать свойства средства выбора файлов и как отобразить средство выбора файлов, чтобы пользователь смог выбрать один файл.

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;
}

Примечание

Всегда следует убедиться, что приложение не прикреплено (или оно может быть не отключено) и задайте свойства средства выбора файлов независимо от того, выбирает ли пользователь один файл или несколько файлов.

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");
    }
});

Комментарии

Чтобы приступить к выбору файлов и папок, см. краткое руководство. Доступ к файлам с помощью средства выбора файлов.

Журнал версий

Версия Windows Версия пакета SDK Добавлено значение
1903 18362 CreateForUser
1903 18362 Пользователь

Конструкторы

FileOpenPicker()

Создает новый экземпляр объекта FileOpenPicker.

В классическом приложении перед использованием экземпляра этого класса таким образом, чтобы отобразить пользовательский интерфейс, необходимо связать объект с дескриптором окна владельца. Дополнительные сведения и примеры кода см. в разделе "Отображение объектов пользовательского интерфейса WinRT", зависящих от CoreWindow.

Свойства

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()

Показывает средство выбора файлов, чтобы пользователь смог выбрать один файл, потенциально деактивировать приложение и повторно активировать его после завершения операции. (приложение Windows Phone 8.x)

PickSingleFileAsync()

Показывает средство выбора файлов, чтобы пользователь смог выбрать один файл.

PickSingleFileAsync(String)

Показывает средство выбора файлов, чтобы пользователь смог выбрать один файл.

ResumePickSingleFileAsync()

Возобновляет операцию выбора, чтобы получить выбранный пользователем файл, если пользователь переходит от приложения после завершения операции выбора и приостановки приложения.

Применяется к

См. также раздел