WindowsRuntimeSystemExtensions.AsTask<TProgress> Method (IAsyncActionWithProgress<TProgress>, IProgress<TProgress>)

.NET Framework (current version)

Returns a task that represents a Windows Runtime asynchronous action that reports progress.

Namespace:  System
Assembly:  System.Runtime.WindowsRuntime (in System.Runtime.WindowsRuntime.dll)

public static Task AsTask<TProgress>(
	this IAsyncActionWithProgress<TProgress> source,
	IProgress<TProgress> progress

Type Parameters


The type of object that provides data that indicates progress.


Type: IAsyncActionWithProgress<TProgress>

The asynchronous action.

Type: System.IProgress<TProgress>

An object that receives progress updates.

Return Value

Type: System.Threading.Tasks.Task
A task that represents the asynchronous action.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IAsyncActionWithProgress<TProgress>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).


source is null.

Use this method to get a Task object for a Windows Runtime asynchronous operation. Task objects simplify the coordination of asynchronous operations.

.NET Framework

Supported in: 4.6, 4.5

.NET for Windows Phone apps

Supported in: Windows Phone Silverlight 8