public static void RegisMessDeal(SocketAsyncEventArgs e) { MClient mClient = MClient.CreateInstance(); AsyncUserToken token = (AsyncUserToken)e.UserToken; //得到一个完整的包的数据,放入新list,第二个参数是数据长度,所以要减去8 List <byte> onePackage = token.receiveBuffer.GetRange(8, token.packageLen - 8); //将复制出来的数据从receiveBuffer旧list中删除 token.receiveBuffer.RemoveRange(0, token.packageLen); //list要先转换成数组,再转换成字符串 String jsonStr = Encoding.Default.GetString(onePackage.ToArray()); //得到用户名和密码 JObject obj = JObject.Parse(jsonStr); if (obj["isRegist"].ToString().Equals("True")) { MessageBox.Show("注册成功"); //关闭注册窗口 MClientViewModel mClientViewModel = MClientViewModel.CreateInstance(); RegisterViewModel registerViewModel = RegisterViewModel.CreateInstance(); //重置输入框 registerViewModel.Resset(); //跨线程调用窗体组件的方法,使注册窗口关闭 mClientViewModel.registerWindow.Dispatcher.Invoke(new Action(() => { mClientViewModel.registerWindow.Close(); })); } else { MessageBox.Show("注册失败"); //清除掉密码 RegisterViewModel registerViewModel = RegisterViewModel.CreateInstance(); registerViewModel.PassWord = ""; registerViewModel.sPassWord = ""; } }
public RegisterWindow() { InitializeComponent(); this.DataContext = RegisterViewModel.CreateInstance(); }