次の方法で共有


DataRequest.GetDeferral メソッド

定義

DataRequestDeferral オブジェクトを作成して返すことで、非同期共有操作をサポートします。

public:
 virtual DataRequestDeferral ^ GetDeferral() = GetDeferral;
DataRequestDeferral GetDeferral();
public DataRequestDeferral GetDeferral();
function getDeferral()
Public Function GetDeferral () As DataRequestDeferral

戻り値

コンテンツを非同期的に共有または送信できる オブジェクト。

次の例は、GetDeferral メソッドを使用して DataRequestDeferral オブジェクトを取得する方法を示しています。

void DataRequested(DataTransferManager sender, DataRequestedEventArgs e)
{
    DataRequestDeferral deferral = e.Request.GetDeferral();
    e.Request.Data.Properties.Title = "Hello World!";
    e.Request.Data.Properties.Description = "This example shows how to share files and images.";
    if (this.dataPackageThumbnail != null)
    {
        e.Request.Data.Properties.Thumbnail = this.dataPackageThumbnail;
    }
    e.Request.Data.SetBitmap(imageStreamRef);
    deferral.Complete();
}

注釈

GetDeferral メソッドを使用すると、アプリは共有操作中に関数を呼び出すことができます。これにより、アプリはターゲット アプリの DataPackage オブジェクトを非同期的に生成できます。

非同期関数呼び出しを使用して共有操作中に DataPackage を生成する場合は、このメソッドを使用します。 この関数は、操作のタイムアウトを防ぐために、200 ミリ秒以内に DataPackage オブジェクトを返す必要があります。ファイルや写真のコレクションなど、パッケージ化に時間がかかるコンテンツをアプリで共有する場合は、このメソッドを使用しないでください。 代わりに、 SetDataProvider メソッドを使用して DataPackage にデリゲートを割り当て、その DataPackage をターゲット アプリに返します。

適用対象