Example #1
0
        private void BackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            bool result = false;

            if (splashScreen != null || splashScreen.IsVisible)
            {
                splashScreen.Hide();
            }
            if (e.Cancelled == true)
            {
            }
            else if (e.Error != null)
            {
                MessageBox.Show(splashScreen, e.Error.Message, "Ошибка подключения к базе данных", MessageBoxButton.OK, MessageBoxImage.Error);
            }
            else
            {
                result = true;
                if (isDbConnectionOkMessageRequired)
                {
                    MessageBox.Show(splashScreen, "Связь с БД установлена", "Информация", MessageBoxButton.OK, MessageBoxImage.Information);
                }
            }
            if (splashScreen != null)
            {
                splashScreen.Close();
            }

            if (CheckDbConnectionComplitted != null)
            {
                DbCheckEventArgs args = new DbCheckEventArgs();
                args.Result = result;
                CheckDbConnectionComplitted(this, args);
            }
        }
Example #2
0
        private void onCheckDbConnectionComplitted(object sender, DbCheckEventArgs e)
        {
            bool connectionIsOk = e.Result;

            if (connectionIsOk)
            {
                //если проверка настроек успешна, запускаем программу
                dbWorker.MainDbConnectionString            = Settings.GlobalMainDbConnectionString;
                this.dbWorker.CheckDbConnectionComplitted -= onCheckDbConnectionComplitted;
                mainWindow.Show();
            }
            else
            {
                //иначе, показываем окно настроек
                if (this.changeSettings() == true)
                {
                    //если настройки были изменены, проверяем их
                    dbWorker.CheckDBConnectionVisualAsync(Settings.GlobalMainDbConnectionString, false);
                }
                else
                {
                    //иначе, выходим из программы
                    //Application.Current.Shutdown();
                    if (this.mainWindow != null)
                    {
                        this.mainWindow.Close();
                    }
                }
            }
        }
Example #3
0
        //private async Task<bool> checkDB()
        //{
        //    setSettings();
        //    bool result = await DbWorker.CheckDBConnectionVisualAsync(settings,true,this);
        //    return result;
        //}

        private void onCheckDbConnectionComplitted(object sender, DbCheckEventArgs e)
        {
            //bool result = e.Result;
            this.Activate();
        }