次の方法で共有


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.TargetFileStorageFile オブジェクトに設定します。

非同期的な応答

保存場所を提供しているアプリが、イベント ハンドラーから戻る前に TargetFileRequested イベントへの応答を完了できない場合 (たとえば、アプリが非同期メソッドを呼び出す場合)、遅延することで非同期的に応答を完了できます。

アプリは保存場所のプロバイダーとして、次の手順に従ってイベントに非同期的に応答するために延期できます。

  1. TargetFileRequestedEventArgs.request プロパティを使用して TargetFileRequest を取得します。
  2. TargetFileRequest.GetDeferral を呼び出して TargetFileRequestDeferral オブジェクトを取得します。
  3. TargetFileRequested イベントに応答するために必要な手順を実行します (前のセクションで説明します)。
  4. TargetFileRequestDeferral.Complete を呼び出して、アプリが TargetFileRequested イベントへの応答を完了したことを通知します。

プロパティ

Request

TargetFileRequested イベントへの応答に使用される TargetFileRequest オブジェクトを取得します。

適用対象

こちらもご覧ください