예제 #1
0
 private void DownloadTask_AnalysisFailed(DownloadTask downloadTask)
 {
     try
     {
         Dispatcher.Invoke(new Action(() =>
         {
             InfoBox.Foreground = new SolidColorBrush(Color.FromRgb(0xf2, 0x5d, 0x8e));
             InfoBox.Text       = "获取下载地址失败";
         }));
         for (int i = Bili_dl.SettingPanel.settings.RetryInterval; i > 0; i--)
         {
             Dispatcher.Invoke(new Action(() =>
             {
                 InfoBox.Text = string.Format("获取下载地址失败,将在{0}秒后重试", i);
             }));
             System.Threading.Thread.Sleep(1000);
         }
         Dispatcher.Invoke(new Action(() =>
         {
             downloadTask.Run();
         }));
     }
     catch (TaskCanceledException)
     {
     }
 }
예제 #2
0
 /// <summary>
 /// Start the task.
 /// </summary>
 public void Start()
 {
     downloadTask.StatusUpdate   += DownloadTask_StatusUpdate;
     downloadTask.Finished       += DownloadTask_Finished;
     downloadTask.AnalysisFailed += DownloadTask_AnalysisFailed;
     downloadTask.Run();
     IsRunning = true;
 }