我正在使用 C# 和 XAML 创建一个商店应用程序。我想向用户展示文件复制等文件操作的进度。我使用的 API 是StorageFile.CopyAsync。
它返回一个可以执行的任务await
。所以我可以告诉我的应用程序等待操作完成。但如果文件太大,我将无法判断其中有多少,应用程序已复制。
我正在使用 C# 和 XAML 创建一个商店应用程序。我想向用户展示文件复制等文件操作的进度。我使用的 API 是StorageFile.CopyAsync。
它返回一个可以执行的任务await
。所以我可以告诉我的应用程序等待操作完成。但如果文件太大,我将无法判断其中有多少,应用程序已复制。
由于CopyAsync
returnIAsyncOperation<StorageFile>
而不是IAsyncOperationWithProgress<StorageFile>
,因此您对这个 API 不走运。我认为没有任何内置的用于复制的 API 可以实现进度报告(Stream.CopyAsync
也没有实现它)。
您始终可以实现自己的版本,将字节从一个流复制到另一个流,并在执行时报告进度。不过,它的性能可能不如内置 API。