コード例 #1
0
        async void ShowMessageBox(IDialogIdentifier identifier)
        {
            var res = await identifier.ShowMessageBoxAsync("Press any button", MaterialMessageBoxButtons.All);

            if (res == MaterialMessageBoxButtons.Nothing) //returns "Nothing" when dialog closing (look in CloseAllDialogsCommand).
            {
                await identifier.ShowMessageBoxAsync("Aborted!", MaterialMessageBoxButtons.Ok);
            }
            else
            {
                await identifier.ShowMessageBoxAsync($"You pressed: {res}", MaterialMessageBoxButtons.Ok);
            }
        }
コード例 #2
0
        /// <summary>
        /// Show language selector.
        /// </summary>
        /// <returns></returns>
        public async void ShowLanguageSelector(IDialogIdentifier dialogIdentifier)
        {
            var res = await Show <Language, LanguageSelectorViewModel>(args : new[] { dialogIdentifier }, dialogIdentifier);

            if (res == null)
            {
                return; //cancel
            }
            Properties.Settings.Default.lang = res;
            Properties.Settings.Default.Save();

            var restart = await dialogIdentifier.ShowMessageBoxAsync(Resources.ChangeLanguageEN_Restart, MaterialMessageBoxButtons.YesNo);

            if (restart == MaterialMessageBoxButtons.Yes)
            {
                ProcessHelper.RestartApp();
            }
        }
コード例 #3
0
        /// <summary>
        /// Попытка входа в систему.
        /// </summary>
        private async Task TryLogin()
        {
            if (!LoginUser.IsValid)
            {
                await dialogIdentifier.ShowMessageBoxAsync(LoginUser.Error, MaterialMessageBoxButtons.Ok);

                return;
            }

            Settings.Default.lastLogin    = LoginUser.Login;
            Settings.Default.lastPassword = LoginUser.Password;

            var res = await client.Login.LoginAsync(LoginUser.Login, LoginUser.Password);

            User user;

            if (res && res.Arg == LoginResponse.Ok)
            {
                user = res.Response;
            }
            else
            {
                string msg;
                switch (res.Arg)
                {
                case LoginResponse.Ok:
                    msg = "Очень странно, что вы видите это";
                    break;

                case LoginResponse.Invalid:
                    msg = "Неправильный логин или пароль";
                    break;

                case LoginResponse.ServerError:
                    msg = "Ошибка сервера";
                    break;

                default:
                    msg = "Что-то явно пошло не так...";
                    break;
                }

                if (res.Code != ISTrainingPartResponseCode.Ok)
                {
                    msg = res;
                }

                await dialogIdentifier.ShowMessageBoxAsync(msg, MaterialMessageBoxButtons.Ok);

                return;
            }

            if (res && res.Arg == LoginResponse.Ok)
            {
                Consts.LoginStatus = true;

                Logger.Log.Info($"Успешный вход в систему: {{login: {user.Login}, mode: {user.Mode}}}");

                var parameters = NavigationParametersFluent.GetNavigationParameters().SetUser(user).SetValue("fromLogin", true);
                regionManager.RequestNavigateInRootRegion(RegionViews.MainView, parameters);
                regionManager.ReqeustNavigateInMainRegion(RegionViews.GroupsView, parameters);
            }
        }
コード例 #4
0
        private async Task TryLogin()
        {
            if (!LoginUser.IsValid)
            {
                await dialogIdentifier.ShowMessageBoxAsync(LoginUser.Error, MaterialMessageBoxButtons.Ok);

                return;
            }

            Settings.Default.lastLogin    = LoginUser.Login;
            Settings.Default.lastPassword = LoginUser.Password;

            var res = await client.Login.LoginAsync(LoginUser.Login, LoginUser.Password);

            User user;

            if (res && res.Arg == LoginResponse.Ok)
            {
                user = res.Response;
            }
            else
            {
                string msg;
                switch (res.Arg)
                {
                case LoginResponse.Ok:
                    msg = "登录成功!";
                    break;

                case LoginResponse.Invalid:
                    msg = "错误的登录或密码";
                    break;

                case LoginResponse.ServerError:
                    msg = "服务器错误";
                    break;

                default:
                    msg = "未知错误...";
                    break;
                }

                if (res.Code != ISTrainingPartResponseCode.Ok)
                {
                    msg = res;
                }

                await dialogIdentifier.ShowMessageBoxAsync(msg, MaterialMessageBoxButtons.Ok);

                return;
            }

            if (res && res.Arg == LoginResponse.Ok)
            {
                Consts.LoginStatus = true;

                Logger.Log.Info($"成功登录: {{login: {user.Login}, mode: {user.Mode}}}");

                var parameters = NavigationParametersFluent.GetNavigationParameters().SetUser(user).SetValue("fromLogin", true);
                regionManager.RequestNavigateInRootRegion(RegionViews.MainView, parameters);
                regionManager.ReqeustNavigateInMainRegion(RegionViews.GroupsView, parameters);
            }
        }