public UpdateWizard(Updater updater) { this.StartPosition = FormStartPosition.CenterParent; this.CurrentUpdater = updater; InitializeComponent(); WindowsHelper.WindowsAPI.SetWindowTheme(this.lvAvailableUpdates.Handle, "Explorer", 0); foreach (var item in this.CurrentUpdater.AvailableUpdates) { ListViewItem lvi = new ListViewItem(item.Name); switch (item.Type) { case UpdateTypes.Nightly: lvi.ForeColor = Color.Red; break; case UpdateTypes.Alpha: lvi.ForeColor = Color.DarkOrange; break; case UpdateTypes.Beta: lvi.ForeColor = Color.Blue; break; case UpdateTypes.ReleaseCandidate: lvi.ForeColor = Color.Brown; break; case UpdateTypes.Release: lvi.ForeColor = Color.Black; break; } lvi.SubItems.Add(item.Version); lvi.SubItems.Add(item.Type.ToString()); lvi.SubItems.Add(item.RequiredVersion); lvi.SubItems.Add(item.UpdaterFilePath); this.lvAvailableUpdates.Items.Add(lvi); } }
void CurrentUpdater_UpdaterDownloadComplete(object sender, Updater.PathEventArgs e) { //pbFileDownload.Value = 0; //lblDownloadedBytes.Text = "0000 / 0000 bytes downloaded"; pbTotalProgress.Value += 1; lblTotalProgress.Text = String.Format("{0}/{1} updates downloaded.", pbTotalProgress.Value, pbTotalProgress.Maximum); if (pbTotalProgress.Value == pbTotalProgress.Maximum); pgDownload.AllowNext = true; }
void UpdaterWorker_DoWork(object sender, DoWorkEventArgs e) { Updater updater = new Updater("http://update.better-explorer.com/update.xml", 5); if (updater.LoadUpdateFile()){ Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, (Action)(() => { UpdateWizard updateWizzard = new UpdateWizard(updater); updateWizzard.ShowDialog(this.GetWin32Window()); })); } }