一起使用backgrounddownloader和savefilepicker?

时间:2013-05-23 11:38:49

标签: windows-runtime

大家好,我有一个小的winrt应用程序,从互联网上下载视频,我试图一起实现backgrounddownloader和filesavepicker但我运行错误的每种类型的实现我搜索谷歌和我搜索微软文档,但没有。我实施下载通过HttpClient类,但我想要的是获得下载进度而HttpClient不提供它.Thx提前

1 个答案:

答案 0 :(得分:0)

以下是一个快速示例,如何操作:

// set download URI
var uri = new Uri("http://s3.amazonaws.com/thetabletshow/thetabletshow_0072_lhotka.mp3");
// get destination file
var picker = new FileSavePicker();
// set allowed extensions
picker.FileTypeChoices.Add("MP3", new List<string> { ".mp3" });
var file = await picker.PickSaveFileAsync();

// create a background download
var downloader = new BackgroundDownloader();
var download = downloader.CreateDownload(uri, file);

// create progress object
var progress = new Progress<DownloadOperation>();
// attach an event handler to get notified on progress
progress.ProgressChanged += (o, operation) => 
    { 
        // use the progress info in Progress.BytesReceived and Progress.TotalBytesToReceive
        ProgressText.Text = operation.Progress.BytesReceived.ToString(); 
    };
// start the actual download
await download.StartAsync().AsTask(progress);

您应该可以从此处根据需要对其进行修改。