Compartir a través de


FileOpenPicker Clase

Definición

Representa un elemento de interfaz de usuario que permite al usuario elegir y abrir archivos.

En una aplicación de escritorio, antes de usar una instancia de esta clase de una manera que muestre la interfaz de usuario, deberá asociar el objeto con el identificador de ventana de su propietario. Para obtener más información y ejemplos de código, consulta Mostrar objetos de interfaz de usuario de WinRT que dependen de 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
Herencia
Object Platform::Object IInspectable FileOpenPicker
Atributos

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)

Ejemplos

En el ejemplo selector de archivos se muestra cómo comprobar si la aplicación está acoplada, cómo establecer las propiedades del selector de archivos y cómo mostrar un selector de archivos para que el usuario pueda elegir un archivo.

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

Nota:

Siempre debe asegurarse de que la aplicación no está acoplada (o que puede desasignada) y establecer las propiedades del selector de archivos independientemente de si el usuario está seleccionando un único archivo o varios archivos.

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

Comentarios

Para empezar a acceder a los archivos y al selector de archivos de carpetas, consulte Inicio rápido: Acceso a archivos con selectores de archivos.

Para obtener información sobre cómo usar esta API fuera de las aplicaciones para UWP, consulta Llamar a las API de interoperabilidad desde una aplicación .NET.

Historial de versiones

Versión de Windows Versión del SDK Valor agregado
1903 18362 CreateForUser
1903 18362 Usuario

Constructores

FileOpenPicker()

Crea una nueva instancia de fileOpenPicker.

En una aplicación de escritorio, antes de usar una instancia de esta clase de una manera que muestre la interfaz de usuario, deberá asociar el objeto con el identificador de ventana de su propietario. Para obtener más información y ejemplos de código, consulta Mostrar objetos de interfaz de usuario de WinRT que dependen de CoreWindow.

Propiedades

CommitButtonText

Obtiene o establece el texto de la etiqueta del botón de confirmación del selector de archivos abierto.

ContinuationData

Obtiene un conjunto de valores que va a rellenar la aplicación antes de la operación PickSingleFileAndContinue o PickMultipleFilesAndContinue que desactiva la aplicación para proporcionar contexto cuando se activa la aplicación. (Windows Phone aplicación 8.x)

FileTypeFilter

Obtiene la colección de tipos de archivo que muestra el selector de archivos abiertos.

SettingsIdentifier

Obtiene o establece el identificador de configuración asociado al estado del selector de apertura de archivo.

SuggestedStartLocation

Obtiene o establece la ubicación inicial en la que el selector de archivos abierto busca los archivos que se van a presentar al usuario.

User

Obtiene información sobre el usuario para el que se creó fileOpenPicker . Use esta propiedad para aplicaciones multiusuario.

ViewMode

Obtiene o establece el modo de vista que usa el selector de apertura de archivos para mostrar elementos.

Métodos

CreateForUser(User)

Crea un objeto FileOpenPicker cuyo ámbito es el directorio personal del usuario especificado. Use este método para aplicaciones multiusuario.

PickMultipleFilesAndContinue()

Obsoleto a partir de Windows 10; use PickSingleFolderAsync en su lugar. Muestra el selector de archivos para que el usuario pueda seleccionar varios archivos, desactivar y la aplicación y reactivarlo cuando se complete la operación. (Windows Phone aplicación 8.x)

PickMultipleFilesAsync()

Muestra el selector de archivos para que el usuario pueda elegir varios archivos. (Aplicación para UWP)

PickSingleFileAndContinue()

Muestra el selector de archivos para que el usuario pueda seleccionar un archivo, lo que podría desactivar la aplicación y volver a activarlo cuando se complete la operación. (Windows Phone aplicación 8.x)

PickSingleFileAsync()

Muestra el selector de archivos para que el usuario pueda elegir un archivo.

PickSingleFileAsync(String)

Muestra el selector de archivos para que el usuario pueda elegir un archivo.

ResumePickSingleFileAsync()

Reanuda la operación de selección para recuperar el archivo seleccionado por el usuario si el usuario sale de la aplicación una vez completada la operación del selector y se suspende la aplicación.

Se aplica a

Consulte también