Esempio n. 1
0
 private void Save_Click(object sender, RoutedEventArgs e)
 {
     if (fileStatusLines.Count <= 0)
     {
         MessageBox.Show("You should choose scans before saving", "No file was chosen", MessageBoxButton.OK, MessageBoxImage.Error);
         return;
     }
     if (string.IsNullOrEmpty(ExcelFilePath))
     {
         MessageBox.Show("You should choose excel file before saving", "No excel file was chosen", MessageBoxButton.OK, MessageBoxImage.Error);
         return;
     }
     if (string.IsNullOrEmpty(savingFolderRun.Text))
     {
         MessageBox.Show("You should specify saving folder", "Saving directory isn't specified", MessageBoxButton.OK, MessageBoxImage.Error);
         return;
     }
     try
     {
         List <FileStatusLine> linesCopy = new List <FileStatusLine>(fileStatusLines);;
         var arguments = new object[9];
         arguments[0] = linesCopy;
         arguments[1] = savingFolderRun.Text;
         arguments[2] = isResizeNeededCheckBx.IsChecked.Value;
         arguments[3] = isCompressNeededCheckBx.IsChecked.Value;
         arguments[4] = targetFormat.SelectedItem.ToString();
         arguments[5] = Int32.Parse(resizeTxtBx.Text);
         arguments[6] = Int32.Parse(qualityTxtBx.Text);
         arguments[7] = googleSheetData;
         arguments[8] = ExcelFilePath;
         // Using background worker to asynchronously run work method.
         using (var worker = new BackgroundWorker
         {
             WorkerReportsProgress = true,
             WorkerSupportsCancellation = true
         })
         {
             pbw                     = new ProgressBarWindow(worker);
             worker.DoWork          += SaveImagesAndExcelProcess;
             worker.ProgressChanged += Worker_ProgressChanged;
             worker.RunWorkerAsync(arguments);
             pbw.ShowDialog();
         }
         ResetWindowState();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Esempio n. 2
0
        private void Bw_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                string email = "";
                string senha = "";

                Dispatcher.Invoke(() =>
                {
                    LoginBtn.IsEnabled = false;

                    progressBarWindow = new ProgressBarWindow("Realizando Login");
                    progressBarWindow.Show();
                });

                Dispatcher.Invoke(() =>
                {
                    email = EmailUC.Text;
                    senha = PasswordUC.Password;
                });

                if (DesktopLoginControlService.Logar(email, senha))
                {
                    Dispatcher.Invoke(() => { PasswordUC.Password = string.Empty; });

                    foreach (int i in Dispatcher.Invoke(() => Application.Current.Windows.OfType <MainWindow>().First().StartSession()))
                    {
                        Thread.Sleep(50);
                        (sender as BackgroundWorker).ReportProgress(i);
                    }
                }
            }
            catch (FieldException ex)
            {
                StandardMessageBoxes.MensagemDeErroCampoFormulario(ex.Message);
            }
            catch (Exception ex)
            {
                StandardMessageBoxes.MensagemDeErro(ex.Message);
            }
            finally
            {
                Dispatcher.Invoke(() =>
                {
                    progressBarWindow.Close();
                    LoginBtn.IsEnabled = true;
                });
            }
        }
        //Метод отображения прогрессбара
        public void ShowProgWindow()

        {
            progressBarViewModel = new ProgressBarViewModel(this);
            progressBarWindow    = new ProgressBarWindow(progressBarViewModel);
            string nameTreadCurrentNew = Thread.CurrentThread.Name;

            progressBarWindow.Show();

            progressBarWindow.Closed += new EventHandler(progressBarWindow.MetroWindow_Closed);

            _progressWindowWaitHandle.Set();

            System.Windows.Threading.Dispatcher.Run();
        }
Esempio n. 4
0
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_Save_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxWindow mbw = new MessageBoxWindow();

            mbw.vm_MessageBoxWindow = new AMS.ViewModel.ViewModelMessageBoxWindow(AMS.Model.Enum.MessageBoxType.Ask,
                                                                                  string.Format("确定使用当前播放时间?"));
            mbw.ShowDialog();
            if (mbw.vm_MessageBoxWindow.Result)
            {
                pbw = new ProgressBarWindow(viewModel.Vm_ProgressBar);
                pbw.vm_Progress.Refresh();
                pbw.Show();
                Thread myThread = new Thread(new ThreadStart(Save));
                myThread.Start();
            }
        }
Esempio n. 5
0
            private void ExportAll(object sender, EventArgs args)
            {
                FolderSelectDialog fsd = new FolderSelectDialog();

                if (fsd.ShowDialog() == DialogResult.OK)
                {
                    progressBar      = new ProgressBarWindow();
                    progressBar.Task = "Extracing Files...";
                    progressBar.Refresh();
                    progressBar.Value         = 0;
                    progressBar.StartPosition = FormStartPosition.CenterScreen;
                    progressBar.Show();

                    ExportAll(fsd.SelectedPath, progressBar);
                }
            }
Esempio n. 6
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            MessageBoxWindow mbw = new MessageBoxWindow();

            mbw.vm_MessageBoxWindow = new AMS.ViewModel.ViewModelMessageBoxWindow(AMS.Model.Enum.MessageBoxType.Ask,
                                                                                  string.Format("确定使用当前播放时间?\n{0}到{1}", vm_PlaylistInfo.EffectDate, vm_PlaylistInfo.EndDate));
            mbw.ShowDialog();
            if (mbw.vm_MessageBoxWindow.Result)
            {
                pbw = new ProgressBarWindow(vm_PlaylistInfo.Vm_ProgressBar);
                pbw.vm_Progress.Refresh();
                pbw.Show();
                Thread myThread = new Thread(new ThreadStart(Save));
                myThread.Start();
            }
        }
Esempio n. 7
0
        private void ExtractAsync(GameFile entry, string destination)
        {
            CancellationTokenSource tokenSource = new CancellationTokenSource();
            ProgressBarWindow       window      = new ProgressBarWindow();

            window.StartDialogWithAction(() => entry.ExtractAsync(destination, tokenSource.Token, (progress, description) =>
            {
                window.InvokeOnThread(new Action(() =>
                {
                    window.SetProgress(progress);
                    window.SetOperationText(description);

                    if (progress == 100)
                    {
                        window.Close();
                    }
                }));
            }), tokenSource);
        }
        private void testmenu_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxWindow mbw = new MessageBoxWindow();

            mbw.vm_MessageBoxWindow = new AMS.ViewModel.ViewModelMessageBoxWindow(AMS.Model.Enum.MessageBoxType.Ask, "是否显示优惠券栏?");
            mbw.ShowDialog();

            mpt = new MediaPlayerTest();
            mpt.vm_playlist.PlayModel  = AMS.Model.AMS_PlayList.Parse(AMS.Model.AMS_PlayList.ToXml((LBList.SelectedItem as AMS.ViewModel.ViewModelPlayListShow).ModelList));
            mpt.vm_playlist.IsShowSlip = mbw.vm_MessageBoxWindow.Result;

            pbw = new ProgressBarWindow(mpt.vm_playlist.Vm_Progressbar);
            pbw.vm_Progress.Refresh();
            pbw.Show();

            Thread myThread = new Thread(new ThreadStart(Save));

            myThread.Start();
        }
 private void btnDownLoad_Click(object sender, RoutedEventArgs e)
 {
     if (lstFileSharingInfo.SelectedIndex < 0)
     {
         vm_fs.ErrorMessage = "请选择需要下载的文件!";
         return;
     }
     System.Windows.Forms.FolderBrowserDialog foldBrowerDialog = new System.Windows.Forms.FolderBrowserDialog();
     foldBrowerDialog.ShowDialog();
     if (!string.IsNullOrEmpty(foldBrowerDialog.SelectedPath))
     {
         downloadpath = foldBrowerDialog.SelectedPath;
         selectindex  = lstFileSharingInfo.SelectedIndex;
         pbw          = new ProgressBarWindow(vm_fs.Vm_ProgressBar);
         pbw.vm_Progress.Refresh();
         pbw.Show();
         Thread myThread = new Thread(new ThreadStart(Down));
         myThread.Start();
     }
 }
Esempio n. 10
0
    static void OpenProgressBarWindow()
    {
        if (m_PluginWindow != null)
        {
            m_PluginWindow.Close();
        }

        m_PluginWindow = CreateInstance <ProgressBarWindow>();

        m_StartTime = 0;
        m_NowTime   = 0;
        m_Progress  = 0;


        m_PluginWindow.Open();
        Task.Run(() =>
        {
            _ = UpdateProgressAsync();
        });
    }
Esempio n. 11
0
        public void CreateNewThread()
        {
            t = ((App)Application.Current).SyncThread;
            ProgressBarWindow pbw;

            if ((t == null) || (!t.IsAlive))
            {
                t = new Thread(delegate()
                {
                    pbw          = new ProgressBarWindow();
                    pbw.Closing += OnProgressBarWindowClosed;
                    pbw.Show();
                    System.Windows.Threading.Dispatcher.Run();
                });
                t.SetApartmentState(ApartmentState.STA);
                t.IsBackground = true;
                t.Start();
                ((App)Application.Current).SyncThread = t;
            }
        }
Esempio n. 12
0
            private void ExportAll(string Folder, ProgressBarWindow progressBar)
            {
                int Curfile = 0;

                foreach (ASST asst in beaFile.FileList.Values)
                {
                    int value = (Curfile * 100) / beaFile.FileList.Count;
                    progressBar.Value = value;
                    progressBar.Refresh();

                    try
                    {
                        if (!String.IsNullOrWhiteSpace(Path.GetDirectoryName($"{Folder}/{beaFile.Name}/{asst.FileName}")))
                        {
                            if (!File.Exists(asst.FileName))
                            {
                                if (!Directory.Exists($"{Folder}/{beaFile.Name}/{asst.FileName}"))
                                {
                                    Directory.CreateDirectory(Path.GetDirectoryName($"{Folder}/{beaFile.Name}/{asst.FileName}"));
                                }
                            }
                        }
                        File.WriteAllBytes($"{Folder}/{beaFile.Name}/{asst.FileName}", GetASSTData(asst.FileName));
                    }
                    catch
                    {
                    }

                    Curfile++;
                    if (value == 99)
                    {
                        value = 100;
                    }
                    progressBar.Value = value;
                    progressBar.Refresh();
                }
            }
Esempio n. 13
0
        public void CheckReport()
        {
            //举例:
            //SelectListInt =[1,0]
            //SelectListFunctionName=[FindUnitError,FindNotExplainComponentNo]
            //表示算法只算FindUnitError,不算FindNotExplainComponentNo
            var controlClass = RegisterMethod();

            var config = XDocument.Load(@"Option.config");

            //Bug:修改配置文件后,读取结果不变
            foreach (var e in config.Elements("configuration").Descendants())
            {
                try
                {
                    controlClass.SelectListInt.Add(Convert.ToInt32(e.Value.ToString()));
                }
                catch (Exception)
                {
                    //TODO:增加读不出数据的异常处理
                    controlClass.SelectListInt.Add(0);
                }

                try
                {
                    controlClass.SelectListContent.Add(e.Attribute("Content").Value.ToString());
                }
                catch (Exception)
                {
                    //TODO:增加读不出数据的异常处理
                    controlClass.SelectListContent.Add("方法名称读取失败");
                }
            }

            var w = new ProgressBarWindow();

            w.Top  = 0.4 * (App.ScreenHeight - w.Height);
            w.Left = 0.4 * (App.ScreenWidth - w.Width);

            var progressBarDataBinding = new ProgressBarDataBinding
            {
                V = 0,
            };

            w.progressBarNumberTextBlock.DataContext = progressBarDataBinding;
            w.progressBar.DataContext = progressBarDataBinding;
            w.progressBarContentTextBlock.DataContext = progressBarDataBinding;

            var progressSleepTime = 500;    //进度条停顿时间

            var thread = new Thread(new ThreadStart(() =>
            {
                w.progressBar.Dispatcher.BeginInvoke((ThreadStart) delegate { w.Show(); });
                int invokeF = 0;    //已调用函数
                for (int i = 0; i < controlClass.SelectListInt.Count; i++)
                {
                    if (controlClass.SelectListInt[i] != 0)
                    {
                        progressBarDataBinding.V       = invokeF * 100 / controlClass.SelectListInt.Sum();
                        progressBarDataBinding.Content = $"正在校核:{controlClass.SelectListContent[i]}";
                        controlClass.SelectListFunctionName[i]?.Invoke();
                        invokeF++;
                        Thread.Sleep(progressSleepTime);
                    }
                }
                progressBarDataBinding.V       = 100;
                progressBarDataBinding.Content = $"正在校核:正在完成中";
                GenerateResultReport();
                _doc.Save("标出错误或警告的报告.doc");
                Thread.Sleep(progressSleepTime);
                MessageBox.Show($"校核已完成!共校核出:" +
                                $"\r错误{reportError.Count}个" +
                                $"\r警告{reportWarnning.Count}个" +
                                $"\r信息{reportInfo.Count}条");
                w.progressBar.Dispatcher.BeginInvoke((ThreadStart) delegate { w.Close(); });
            }));

            thread.Start();
        }