Partilhar via


FileOpenPicker Classe

Definição

Representa um elemento de interface do usuário que permite que o usuário escolha e abra arquivos.

Em um aplicativo da área de trabalho, antes de usar uma instância dessa classe de uma maneira que exiba a interface do usuário, você precisará associar o objeto ao identificador de janela do proprietário. Para obter mais informações e exemplos de código, consulte Exibir objetos de interface do usuário do WinRT que dependem do 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
Herança
Object Platform::Object IInspectable FileOpenPicker
Atributos

Requisitos do Windows

Família de dispositivos
Windows 10 (introduzida na 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduzida na v1.0)

Exemplos

O exemplo do seletor de arquivos demonstra como verificar se o aplicativo foi ajustado, como definir propriedades do seletor de arquivos e como mostrar um seletor de arquivos para que o usuário possa escolher um arquivo.

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

Observação

Você sempre deve verificar se o aplicativo não está ajustado (ou se ele pode ser desmarcado) e definir propriedades do seletor de arquivos, independentemente de o usuário estar escolhendo um único arquivo ou vários arquivos.

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

Comentários

Para começar a acessar arquivos e o seletor de arquivos de pastas, consulte Início Rápido: Acessando arquivos com seletores de arquivos.

Para obter informações sobre como usar essa API fora dos aplicativos UWP, consulte Chamar APIs de interoperabilidade de um aplicativo .NET.

Histórico de versão

Versão do Windows Versão do SDK Valor adicionado
1903 18362 CreateForUser
1903 18362 Usuário

Construtores

FileOpenPicker()

Cria uma nova instância de um FileOpenPicker.

Em um aplicativo da área de trabalho, antes de usar uma instância dessa classe de uma maneira que exiba a interface do usuário, você precisará associar o objeto ao identificador de janela do proprietário. Para obter mais informações e exemplos de código, consulte Exibir objetos de interface do usuário do WinRT que dependem do CoreWindow.

Propriedades

CommitButtonText

Obtém ou define o texto do rótulo do botão de confirmação do seletor de arquivo aberto.

ContinuationData

Obtém um conjunto de valores a serem preenchidos pelo aplicativo antes da operação PickSingleFileAndContinue ou PickMultipleFilesAndContinue que desativa o aplicativo para fornecer contexto quando o aplicativo é ativado. (aplicativo Windows Phone 8.x)

FileTypeFilter

Obtém a coleção de tipos de arquivo que o seletor aberto de arquivos exibe.

SettingsIdentifier

Obtém ou define o identificador de configurações associado ao estado do seletor aberto do arquivo.

SuggestedStartLocation

Obtém ou define o local inicial em que o seletor aberto de arquivos procura arquivos para apresentar ao usuário.

User

Obtém informações sobre o usuário para o qual o FileOpenPicker foi criado. Use essa propriedade para aplicativos multiusuários.

ViewMode

Obtém ou define o modo de exibição que o seletor aberto de arquivos usa para exibir itens.

Métodos

CreateForUser(User)

Cria um FileOpenPicker com escopo para o diretório pessoal do usuário especificado. Use esse método para aplicativos multiusuários.

PickMultipleFilesAndContinue()

Obsoleto a partir de Windows 10; use PickSingleFolderAsync em vez disso. Mostra o seletor de arquivos para que o usuário possa escolher vários arquivos, desativando e o aplicativo e reativando-o quando a operação for concluída. (aplicativo Windows Phone 8.x)

PickMultipleFilesAsync()

Mostra o seletor de arquivos para que o usuário possa escolher vários arquivos. (Aplicativo UWP)

PickSingleFileAndContinue()

Mostra o seletor de arquivos para que o usuário possa escolher um arquivo, potencialmente desativando o aplicativo e reativando-o quando a operação for concluída. (aplicativo Windows Phone 8.x)

PickSingleFileAsync()

Mostra o seletor de arquivos para que o usuário possa escolher um arquivo.

PickSingleFileAsync(String)

Mostra o seletor de arquivos para que o usuário possa escolher um arquivo.

ResumePickSingleFileAsync()

Retoma a operação de seleção para recuperar o arquivo selecionado pelo usuário se o usuário navegar para longe do aplicativo após a conclusão da operação do seletor e o aplicativo for suspenso.

Aplica-se a

Confira também