コード例 #1
0
 private void Update(object parameter)
 {
     Task.Factory.StartNew(() =>
     {
         canExecute = false;
         this.Dispatcher.Invoke(new Action(() =>
         {
             BtnContent = "正在下载升级包,请等待...";
         }));
         UpdateRequest updateRequest = CheckUpdateHelper.GetUploadRequest();
         if (updateRequest != null)
         {
             Application.Current.Dispatcher.BeginInvoke(new Action(() =>
             {
                 if (MessageBoxHelper.MessageBoxShowQuestion($"检测到新版本{updateRequest.Version}[当前版本{EnvironmentInfo.CurrentVersion}],是否立即升级?") == MessageBoxResult.Yes)
                 {
                     CheckUpdateHelper.ExecuteUpdate(updateRequest);
                 }
             }));
         }
         canExecute = true;
         this.Dispatcher.Invoke(new Action(() =>
         {
             BtnContent = "立即升级";
         }));
     });
 }
コード例 #2
0
        private void UserControl_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                DevOpsProduct product = DevOpsAPI.ReportVersion();
                if (product != null)
                {
                    viewModel.LastVersion = product.ProductVersion;

                    if (CheckUpdateHelper.CompareVersion(EnvironmentInfo.CurrentVersion, product.ProductVersion) < 0)
                    {
                        viewModel.canExecute = true;
                    }
                    else
                    {
                        viewModel.BtnContent = "当前已是最新版本";
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }