TargetFileRequestedEventArgs 类

定义

提供有关 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
继承
Object Platform::Object IInspectable TargetFileRequestedEventArgs
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

文件选取器示例演示如何响应 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);

在此示例中, e 包含 TargetFileRequestedEventArgs 对象。

注解

此对象将传递给 TargetFileRequested 事件的事件处理程序。

响应 TargetFileRequested 事件

如果应用参与“文件保存选取器”合约并触发 TargetFileRequested 事件,则应用应按照以下步骤做出响应:

  1. 使用 TargetFileRequestedEventArgs.request 属性获取 TargetFileRequest
  2. ) StorageFile 创建 (或检索以表示要保存的文件;此 StorageFile 将返回到调用文件选取器的应用,供调用应用保存并使用,以便将内容写入文件。

表示文件的 对象的文件名和扩展名必须与用户指定的文件名和扩展名匹配, (并且可通过 FileName) 访问,否则尝试保存该文件将失败。 如果尝试失败,用户可以尝试再次保存文件。

如果应用 (为保存位置的提供程序,) 无法为要保存的文件提供对象,请将 TargetFileRequest.TargetFile 设置为 null

  1. TargetFileRequest.TargetFile 设置为 StorageFile 对象。

异步响应

如果提供保存位置的应用在从其事件处理程序 (返回之前无法完成对 TargetFileRequested 事件的响应,例如,如果应用调用异步方法) ,则可以通过延迟异步完成响应。

应用作为保存位置的提供程序可以延迟,以便通过以下步骤异步响应事件:

  1. 使用 TargetFileRequestedEventArgs.request 属性获取 TargetFileRequest
  2. 调用 TargetFileRequest.GetDeferral 以获取 TargetFileRequestDeferral 对象。
  3. 执行响应上一部分) 中所述 的 TargetFileRequested 事件 (所需的步骤。
  4. 调用 TargetFileRequestDeferral.Complete 以指示应用已完成对 TargetFileRequested 事件的响应。

属性

Request

获取用于响应 TargetFileRequested 事件的 TargetFileRequest 对象

适用于

另请参阅