TargetFileRequestedEventArgs 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í.
Proporciona información sobre un evento TargetFileRequested .
public ref class TargetFileRequestedEventArgs sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class TargetFileRequestedEventArgs final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public sealed class TargetFileRequestedEventArgs
Public NotInheritable Class TargetFileRequestedEventArgs
- Herencia
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
Ejemplos
En el ejemplo del selector de archivos se muestra cómo responder a un evento TargetFileRequested .
// Event handler
private async void OnTargetFileRequested(FileSavePickerUI sender, TargetFileRequestedEventArgs e)
{
// Respond to TargetFileRequested event on the background thread on which it was raised
// Requesting a deferral allows the app to call another asynchronous method and complete the request at a later time
var deferral = e.Request.GetDeferral();
// Create file and assign to TargetFile property
e.Request.TargetFile = await ApplicationData.Current.LocalFolder.CreateFileAsync(sender.FileName, CreationCollisionOption.GenerateUniqueName);
// Complete the deferral to let the Picker know the request is finished
deferral.Complete();
}
// Register for the event
fileSavePickerUI.TargetFileRequested += new TypedEventHandler<FileSavePickerUI, TargetFileRequestedEventArgs>(OnTargetFileRequested);
En el ejemplo, e
contiene un objeto TargetFileRequestedEventArgs.
Comentarios
Este objeto se pasa al controlador de eventos para los eventos TargetFileRequested .
Responder a un evento TargetFileRequested
Si la aplicación participa en el contrato selector de guardado de archivos y se desencadena un evento TargetFileRequested , la aplicación debe responder siguiendo estos pasos:
- Obtenga un TargetFileRequest mediante la propiedad TargetFileRequestedEventArgs.request .
- Cree (o recupere) un StorageFile para representar el archivo que se va a guardar; este archivo StorageFile se devuelve a la aplicación que llamó al selector de archivos para guardar y usar la aplicación que realiza la llamada para escribir contenido en el archivo.
El nombre de archivo y la extensión del objeto que representa el archivo deben coincidir con el nombre de archivo y la extensión especificados por el usuario (y accesible a través de FileName) o se producirá un error en el intento de guardar el archivo. Si se produce un error en el intento, el usuario puede intentar volver a guardar el archivo.
Si la aplicación (como proveedor de la ubicación de guardado) no puede proporcionar un objeto para que el archivo se guarde, establezca TargetFileRequest.TargetFile en null.
- Establezca TargetFileRequest.TargetFile en el objeto StorageFile .
Responder de forma asincrónica
Si la aplicación, que proporciona la ubicación de guardado, no puede terminar de responder al evento TargetFileRequested antes de que vuelva desde su controlador de eventos (por ejemplo, si la aplicación llama a un método asincrónico), puede completar la respuesta de forma asincrónica aplazando.
La aplicación, como proveedor de la ubicación de guardado, puede aplazar para responder al evento de forma asincrónica siguiendo estos pasos:
- Obtenga un TargetFileRequest mediante la propiedad TargetFileRequestedEventArgs.request .
- Llame a TargetFileRequest.GetDeferral para obtener un objeto TargetFileRequestDeferral .
- Realice los pasos necesarios para responder al evento TargetFileRequested (descrito en la sección anterior).
- Llame a TargetFileRequestDeferral.Complete para indicar que la aplicación ha terminado de responder al evento TargetFileRequested .
Propiedades
Request |
Obtiene un objeto TargetFileRequest que se usa para responder a un evento TargetFileRequested . |