예제 #1
0
        public void ProgressInit(string title, int max, bool cancelable = false)
        {
            if (fProgressForm != null)
            {
                fProgressForm.ProgressInit(title, max, cancelable);
            }
            else
            {
                fFormLoaded   = false;
                fTitle        = title;
                fMax          = max;
                fCancelable   = cancelable;
                fParentHandle = AppHost.Instance.GetTopWindowHandle();

                fThread = new Thread(ShowProgressForm);
                fThread.SetApartmentState(ApartmentState.STA);
                fThread.Start();

                while (!fFormLoaded)
                {
                    Thread.Sleep(50);
                }
                //fMRE.WaitOne();
            }

            fVal = 0;
        }
예제 #2
0
        private void ShowProgressForm()
        {
            fProgressForm = new ProgressDlg();
            fProgressForm.ProgressInit(fTitle, fMax);
            fProgressForm.Load += ProgressForm_Load;

            /*if (fParentHandle != IntPtr.Zero) {
             *  UIHelper.CenterFormByParent(fProgressForm, fParentHandle);
             * }*/

            fProgressForm.Show();
            //fProgressForm.Close();
        }
예제 #3
0
        private void ShowProgressForm()
        {
            fProgressForm = new ProgressDlg();
            fProgressForm.ProgressInit(fTitle, fMax, fCancelable);
            fProgressForm.Load += ProgressForm_Load;

            if (fParentHandle != IntPtr.Zero)
            {
                UIHelper.CenterFormByParent(fProgressForm, fParentHandle);
            }

            fProgressForm.ShowDialog();
            //fProgressForm.Close();
        }