我正在使用C#和XAML创建商店应用。我想向用户显示文件操作的进度,例如文件复制。我正在使用的API是StorageFile.CopyAsync。
它返回await
能够执行的任务。所以我可以告诉我的应用程序等待操作完成。但是如果文件太大,我将无法分辨出应用程序已复制了多少文件。
答案 0 :(得分:1)
由于CopyAsync
返回IAsyncOperation<StorageFile>
而不是IAsyncOperationWithProgress<StorageFile>
,因此您对此API不满意。我认为没有任何用于复制的内置API可以实现进度报告(Stream.CopyAsync
也没有实现)。
您总是可以实现自己的版本,它可以将块中的字节从一个流复制到另一个流,并在执行时报告进度。但它可能不如内置API那么高效。