private void Reconnect(object sender, EventArgs e) { ConnectParamters parameters = new ConnectParamters(); parameters.IsReconnect = true; parameters.OriginLoginId = this._LoginId; parameters.OriginPwd = this._Pwd; ConnectManager.ConnectHelper(parameters); }
private void RegisterLoginEvent() { this.MessengerInstance.Register<LoginMsg>(this, m => { Action startWarnAction = () => { }; Action failedWarnAction = () => { Common.SynchronizationContext.Send(ar => { this.MessengerInstance.Send(new LoginSuccessMsg(LoginProgressEnum.ProgressClose)); MessageBox.Show("The loginName or password is not correct"); this.MessengerInstance.Send(new LoginSuccessMsg(LoginProgressEnum.LoginOpen)); }, null); }; Action exceptionWarnAction = () => { Common.SynchronizationContext.Post(ar => { this.MessengerInstance.Send(new LoginSuccessMsg(LoginProgressEnum.ProgressClose)); MessageBox.Show("Network not connected!"); this.MessengerInstance.Send(new LoginSuccessMsg(LoginProgressEnum.LoginOpen)); }, null); }; Action<bool> loginSuccessAction = isReconnect => { AccountManager.Default.AccountGroupCol.Clear(); FundManager.Default.DataCol.Clear(); InitData(isReconnect); }; ConnectParamters parameters = new ConnectParamters(); parameters.IsReconnect = false; parameters.LoginMsg = m; parameters.OriginLoginId = this._LoginId; parameters.OriginPwd = this._Pwd; parameters.SynchronizationContext = Common.SynchronizationContext; parameters.StartWarnAction = startWarnAction; parameters.FailedWarnAction = failedWarnAction; parameters.ExceptionWarnAction = exceptionWarnAction; parameters.LoginSuccessAction = loginSuccessAction; ConnectManager.Connect(parameters); }); this.MessengerInstance.Register<LoginedMsg>(this, m => { if (m.Msg.Item1) { AliveKeeper.Default.ConnectionBroken += Reconnect; } Common.Service = m.Msg.Item2; Common.SessionId = m.Msg.Item3; this._LoginId = m.Msg.Item4; this._Pwd = m.Msg.Item5; }); }