FileOpenPicker Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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. |