private void connectServerBtn_Tap(object sender, System.Windows.Input.GestureEventArgs e) { ConnectionManager.Instance.ConnectionInfo.CurrentServer.AccessCode = Convert.ToInt16(accessCodeTxtBox.Text.Trim()); ConnectionManager.Instance.ConnectServer( SettingManager.Instance.SettingInfo.DeviceType, new CallbackHandler((object serverExtraInfo) => { Deployment.Current.Dispatcher.BeginInvoke(() => { if (ConnectionManager.Instance.IsConnected) { AppStateUtils.Set(Constant.KEY_SERVER_EXTRA_INFO, serverExtraInfo); this.NavigationService.RemoveBackEntry(); this.NavigationService.GoBack(); } else { //프로그레스바 숨김 UIUtils.SetVisibility(connectProgressBar, false); UIUtils.SetVisibility(labelProgressBar, false); MessageBox.Show(I18n.GetString("AppMessageAccessCodeIncorrect"), I18n.GetString("AppMessageNotification"), MessageBoxButton.OK); accessCodeTxtBox.Text = string.Empty; //역시 시간차 공격.. bgWorker.RunWorkerAsync(); } }); })); //프로그레스바 표시 UIUtils.SetVisibility(connectProgressBar, true); UIUtils.SetVisibility(labelProgressBar, true); }
private void connectAppbarIconBtn_Click(object sender, EventArgs e) { //네트워크 연결체크 if (!NetworkUtils.IsNetworkAvailable) { NetworkUtils.ShowWiFiSettingPage(I18n.GetString("AppMessageRequiredDataNetwork"), I18n.GetString("AppMessageNotification")); return; } //현재 접속되어 있는 서버가 있다면 종료시킴. if (ConnectionManager.Instance.IsConnected) { ConnectionManager.Instance.DisconnectServer(null); } //선택된 서버 정보를 현재 서버로 변경 ServerInfo serverInfo = (ServerInfo)historyItemViewOnPage.SelectedItem; ConnectionManager.Instance.ConnectionInfo.CurrentServer = serverInfo; ConnectionManager.Instance.ConnectServer( SettingManager.Instance.SettingInfo.DeviceType, new CallbackHandler((object serverExtraInfo) => { Deployment.Current.Dispatcher.BeginInvoke(() => { if (serverExtraInfo is ServerExtraInfo) { ServerExtraInfo svrExtInfo = serverExtraInfo as ServerExtraInfo; AppStateUtils.Set(Constant.KEY_SERVER_EXTRA_INFO, svrExtInfo); this.NavigationService.GoBack(); } else if (serverExtraInfo is SocketError) { if ((SocketError)serverExtraInfo == SocketError.TimedOut) { MessageBox.Show(I18n.GetString("AppMessageNotAbleConnectPC")); (SearchPivot.Parent as Pivot).SelectedIndex = 0; } } else { MessageBox.Show(I18n.GetString("AppMessageAccessCodeIncorrect")); //접속코드 입력 화면으로 이동 this.NavigationService.Navigate(new Uri(string.Format(Constant.PAGE_SERVER_CONNECT, serverInfo.ServerName), UriKind.Relative)); } }); })); }