コード例 #1
0
 protected virtual void OnStatusChanged(StatusChangedArgs e)
 {
     if (this.StatusChanged != null)
     {
         this.StatusChanged(this, e);
     }
 }
コード例 #2
0
        void StatusChanged(object sender, StatusChangedArgs e)
        {

            //lbStatus.Text = client.Status.ToString();

            switch (clients[e.Index].Status)
            {
                case HttpDownloadClientStatus.Idle:
                case HttpDownloadClientStatus.Canceled:
                case HttpDownloadClientStatus.Completed:
                    btnDownload.Enabled = true;
                    btnPause.Enabled = false;
                    btnCancel.Enabled = false;
                    // tbPath.Enabled = true;
                    // tbURL.Enabled = true;
                    break;
                case HttpDownloadClientStatus.Downloading:
                    btnDownload.Enabled = false;
                    btnPause.Enabled = true;
                    btnCancel.Enabled = true;
                    //  tbPath.Enabled = false;
                    //  tbURL.Enabled = false;
                    break;
                case HttpDownloadClientStatus.Pausing:
                case HttpDownloadClientStatus.Canceling:
                    btnDownload.Enabled = false;
                    btnPause.Enabled = false;
                    btnCancel.Enabled = false;
                    // tbPath.Enabled = false;
                    //  tbURL.Enabled = false;
                    break;
                case HttpDownloadClientStatus.Paused:
                    btnDownload.Enabled = false;
                    btnPause.Enabled = true;
                    btnCancel.Enabled = false;
                    // tbPath.Enabled = false;
                    //tbURL.Enabled = false;
                    break;
            }

            //if (client.Status == HttpDownloadClientStatus.Paused)
            //{
            //    //lbSummary.Text =
            //    //   String.Format("Received: {0}KB, Total: {1}KB, Time: {2}:{3}:{4}",
            //    //   client.DownloadedSize / 1024, client.TotalSize / 1024,
            //    //   client.TotalUsedTime.Hours, client.TotalUsedTime.Minutes,
            //    //   client.TotalUsedTime.Seconds);
            //}
        }