DataRequest.GetDeferral Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Supports asynchronous sharing operations by creating and returning a DataRequestDeferral object.
public:
virtual DataRequestDeferral ^ GetDeferral() = GetDeferral;
DataRequestDeferral GetDeferral();
public DataRequestDeferral GetDeferral();
function getDeferral()
Public Function GetDeferral () As DataRequestDeferral
Returns
An object that allows you to share or send content asynchronously.
Examples
The following sample shows how to get a DataRequestDeferral object by using the GetDeferral method.
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();
}
Remarks
The GetDeferral method allows your app to call a function during a share operation, so that your app can asynchronously generate the DataPackage object for the target app.
Use this method when you want to use an asynchronous function call to generate the DataPackage during a share operation. This function must return a DataPackage object within 200ms to prevent the operation from timing out. If your app shares content that takes more time to package, such as a collection of files or photos, don't use this method. Instead, use the SetDataProvider method to assign a delegate to a DataPackage and return that DataPackage to the target app.