using System;  
 | 
using System.Collections.Generic; 
 | 
using System.Threading; 
 | 
using HDL_ON.DAL.Server; 
 | 
using HDL_ON.Entity; 
 | 
using HDL_ON.UI.CSS; 
 | 
using Shared; 
 | 
  
 | 
namespace HDL_ON.UI.UI1Login 
 | 
{ 
 | 
    public partial class RegisterPage : Dialog 
 | 
    { 
 | 
        #region 控件列表 
 | 
        /// <summary> 
 | 
        /// 等待提示 
 | 
        /// </summary> 
 | 
        Loading waitPage; 
 | 
        /// <summary> 
 | 
        /// 当前界面 
 | 
        /// </summary> 
 | 
        FrameLayout bodyView; 
 | 
        /// <summary> 
 | 
        /// 选择手机登录按钮 
 | 
        /// </summary> 
 | 
        Button btnPhoneLogin; 
 | 
        /// <summary> 
 | 
        /// 选择邮箱登录按钮 
 | 
        /// </summary> 
 | 
        Button btnEmailLogin; 
 | 
        #region 服务器选择 
 | 
        /// <summary> 
 | 
        /// 服务器区域 
 | 
        /// </summary> 
 | 
        FrameLayout serverView; 
 | 
        /// <summary> 
 | 
        /// 服务器Icon按钮 
 | 
        /// </summary> 
 | 
        Button btnServerIcon; 
 | 
        /// <summary> 
 | 
        /// 服务器文本框 
 | 
        /// </summary> 
 | 
        Button btnServerText; 
 | 
        ///// <summary> 
 | 
        ///// 服务器文本框 
 | 
        ///// </summary> 
 | 
        //EditText etServer; 
 | 
        ///// <summary> 
 | 
        ///// 服务器子区域里面的分割线1 
 | 
        ///// </summary> 
 | 
        //Button btnLineVertical_server; 
 | 
        /// <summary> 
 | 
        ///服务器go按钮 
 | 
        /// </summary> 
 | 
        Button btnServerGo; 
 | 
        /// <summary> 
 | 
        /// 服务器子区域底部横线 
 | 
        /// </summary> 
 | 
        Button btnServerBottomLine; 
 | 
        #endregion 
 | 
        /// <summary> 
 | 
        /// 账号子区域 
 | 
        /// </summary> 
 | 
        FrameLayout accountView; 
 | 
        /// <summary> 
 | 
        /// 国际区号按钮 
 | 
        /// </summary> 
 | 
        Button btnGlobalRoaming; 
 | 
        /// <summary> 
 | 
        /// 账号子区域里面的分割线 
 | 
        /// </summary> 
 | 
        Button btnDividingLineVertical_AccountView; 
 | 
        /// <summary> 
 | 
        /// 账号文本框 
 | 
        /// </summary> 
 | 
        EditText etAccount; 
 | 
        /// <summary> 
 | 
        /// 账号Icon按钮 
 | 
        /// </summary> 
 | 
        Button btnAccountIcon; 
 | 
        /// <summary> 
 | 
        /// 账号子区域底部横线 
 | 
        /// </summary> 
 | 
        Button btnVerificationCodeViewBottomLine; 
 | 
        /// <summary> 
 | 
        /// 密码子区域 
 | 
        /// </summary> 
 | 
        FrameLayout passwordView; 
 | 
        /// <summary> 
 | 
        /// 密码Icon按钮 
 | 
        /// </summary> 
 | 
        Button btnPasswordIcon; 
 | 
        /// <summary> 
 | 
        /// 密码文本框 
 | 
        /// </summary> 
 | 
        EditText etPassword; 
 | 
        /// <summary> 
 | 
        /// 密码子区域里面的分割线1 
 | 
        /// </summary> 
 | 
        Button btnDividingLineVertical_PasswordView1; 
 | 
        /// <summary> 
 | 
        /// 密码是否可见按钮 
 | 
        /// </summary> 
 | 
        Button btnVisiblePassword; 
 | 
        /// <summary> 
 | 
        /// 密码子区域底部横线 
 | 
        /// </summary> 
 | 
        Button btnPasswordViewBottomLine; 
 | 
  
 | 
        /// <summary> 
 | 
        /// 确认密码子区域 
 | 
        /// </summary> 
 | 
        FrameLayout repeatPasswordView; 
 | 
        /// <summary> 
 | 
        /// 确认密码Icon按钮 
 | 
        /// </summary> 
 | 
        Button btnRepeatPasswordIcon; 
 | 
        /// <summary> 
 | 
        /// 确认密码文本框 
 | 
        /// </summary> 
 | 
        EditText etRepeatPassword; 
 | 
        /// <summary> 
 | 
        /// 确认密码子区域里面的分割线1 
 | 
        /// </summary> 
 | 
        Button btnRepeatDividingLineVertical_PasswordView1; 
 | 
        /// <summary> 
 | 
        /// 确认密码是否可见按钮 
 | 
        /// </summary> 
 | 
        Button btnRepeatVisiblePassword; 
 | 
        /// <summary> 
 | 
        /// 确认密码子区域底部横线 
 | 
        /// </summary> 
 | 
        Button btnRepeatPasswordViewBottomLine; 
 | 
        /// <summary> 
 | 
        /// 验证码子区域 
 | 
        /// </summary> 
 | 
        FrameLayout verificationCodeView; 
 | 
        /// <summary> 
 | 
        /// 验证码图标 
 | 
        /// </summary> 
 | 
        Button btnVerificationCodeIcon; 
 | 
        /// <summary> 
 | 
        /// 验证码子区域分割线 
 | 
        /// </summary> 
 | 
        Button btnDividingLineVertical_VerificationCodeView1; 
 | 
        /// <summary> 
 | 
        /// 验证码文本输入框 
 | 
        /// </summary> 
 | 
        EditText etVerificationCode; 
 | 
        /// <summary> 
 | 
        /// 获取验证码按钮 
 | 
        /// </summary> 
 | 
        Button btnGetVerificationCode_Phone; 
 | 
        /// <summary> 
 | 
        /// 获取验证码按钮 
 | 
        /// </summary> 
 | 
        Button btnGetVerificationCode_Mail; 
 | 
        /// <summary> 
 | 
        /// 验证码子区域底部分割线 
 | 
        /// </summary> 
 | 
        Button btnAccountViewBottomLine; 
 | 
        /// <summary> 
 | 
        /// 注册按钮 
 | 
        /// </summary> 
 | 
        Button btnRegister; 
 | 
  
 | 
        #endregion 
 | 
  
 | 
        #region  局部变量列表 
 | 
        ///// <summary> 
 | 
        ///// 账号类型 
 | 
        ///// 0:手机 
 | 
        ///// 1:邮箱 
 | 
        ///// </summary> 
 | 
        //int accountType = 0; 
 | 
        /// <summary> 
 | 
        /// 手机号码是否有效 
 | 
        /// </summary> 
 | 
        bool ValidMobileNumber = false; 
 | 
        /// <summary> 
 | 
        /// 密码是否有效 
 | 
        /// </summary> 
 | 
        bool ValidPassword = false; 
 | 
        /// <summary> 
 | 
        /// 服务器请求对象 
 | 
        /// </summary> 
 | 
        HttpServerRequest pm; 
 | 
        /// <summary> 
 | 
        /// 回调事件 
 | 
        /// </summary> 
 | 
        //Action callbackAction; 
 | 
        /// <summary> 
 | 
        /// 注册类型 
 | 
        /// 0:手机 
 | 
        /// 1:邮箱 
 | 
        /// </summary> 
 | 
        int registerType = 0; 
 | 
        /// <summary> 
 | 
        /// 手机区号 
 | 
        /// </summary> 
 | 
        string phoneZoneCode = "86"; 
 | 
        /// <summary> 
 | 
        /// 是否选择过服务器 
 | 
        /// </summary> 
 | 
        bool isSelectServer; 
 | 
  
 | 
        string registerPhone; 
 | 
        string registerEmail; 
 | 
        /// <summary> 
 | 
        /// 是否点击了返回,用于屏蔽EditText失去焦点检测事件 
 | 
        /// </summary> 
 | 
        bool isHitBack; 
 | 
        #endregion 
 | 
  
 | 
        /// <summary> 
 | 
        /// 回调事件 
 | 
        /// 账号,密码,是否手机 
 | 
        /// account,password,isPhone 
 | 
        /// </summary> 
 | 
        Action<string, string, bool> AutoLoginAction; 
 | 
  
 | 
        /// <summary> 
 | 
        ///  
 | 
        /// </summary> 
 | 
        /// <param name="autoLoginAction">注册成功回调事件</param> 
 | 
        public RegisterPage(Action<string, string, bool> autoLoginAction) 
 | 
        { 
 | 
            AutoLoginAction = autoLoginAction; 
 | 
  
 | 
            bodyView = new FrameLayout() 
 | 
            { 
 | 
                BackgroundColor = CSS_Color.MainBackgroundColor, 
 | 
            }; 
 | 
            AddChidren(bodyView); 
 | 
  
 | 
            //2020-12-22 增加点击隐藏键盘事件 
 | 
            bodyView.MouseDownEventHandler += (sender, e) => { 
 | 
                Application.HideSoftInput(); 
 | 
            }; 
 | 
  
 | 
            pm = new HttpServerRequest(); 
 | 
        } 
 | 
  
 | 
        //public RegisterPage(Action action) 
 | 
        //{ 
 | 
        //    bodyView = new FrameLayout() 
 | 
        //    { 
 | 
        //        BackgroundColor = CSS_Color.MainBackgroundColor, 
 | 
        //    }; 
 | 
        //    AddChidren(bodyView); 
 | 
        //    pm = new HttpServerRequest(); 
 | 
        //    callbackAction = action; 
 | 
        //} 
 | 
  
 | 
        public void ShowDialog() 
 | 
        { 
 | 
            Action backAction = () => 
 | 
            { 
 | 
                isHitBack = true; 
 | 
                //2020-12-22 增加点击隐藏键盘事件 
 | 
                Application.HideSoftInput(); 
 | 
            }; 
 | 
  
 | 
            new TopViewDiv(this, bodyView, Language.StringByID(StringId.Register)).LoadTopView(backAction); 
 | 
            //new PublicAssmebly().LoadTopView(this, bodyView, Language.StringByID(StringId.Register)); 
 | 
  
 | 
            #region 注册方式选择 
 | 
            btnPhoneLogin = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = Application.GetRealHeight(112), 
 | 
                Width = Application.GetRealWidth(120), 
 | 
                Height = Application.GetRealHeight(40), 
 | 
                TextID = StringId.RegisterByPhone, 
 | 
                TextColor = CSS_Color.MainColor, 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextSize = CSS_FontSize.EmphasisFontSize_Secondary, 
 | 
            }; 
 | 
            bodyView.AddChidren(btnPhoneLogin); 
 | 
  
 | 
            btnEmailLogin = new Button() 
 | 
            { 
 | 
                X = btnPhoneLogin.Right, 
 | 
                Y = Application.GetRealHeight(112), 
 | 
                Width = Application.GetRealWidth(100), 
 | 
                Height = Application.GetRealHeight(40), 
 | 
                TextID = StringId.RegisterByEmail, 
 | 
                TextColor = CSS_Color.PromptingColor1, 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
            }; 
 | 
            bodyView.AddChidren(btnEmailLogin); 
 | 
            if(Language.CurrentLanguage!= "Chinese") 
 | 
            { 
 | 
                btnPhoneLogin.Width = Application.GetRealWidth(180); 
 | 
                btnEmailLogin.Width = Application.GetRealWidth(180); 
 | 
            } 
 | 
            #endregion 
 | 
  
 | 
            #region 服务器选择 
 | 
            serverView = new FrameLayout() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = Application.GetRealHeight(167), 
 | 
                Width = Application.GetRealWidth(319), 
 | 
                Height = Application.GetRealHeight(44), 
 | 
            }; 
 | 
            bodyView.AddChidren(serverView); 
 | 
  
 | 
            btnServerIcon = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(9), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/Server.png", 
 | 
  
 | 
            }; 
 | 
            serverView.AddChidren(btnServerIcon); 
 | 
  
 | 
            btnServerText = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(49), 
 | 
                Width = Application.GetRealWidth(319 - 78), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.PromptingColor1, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                TextID = StringId.PleaseSelectCountryOrRegion, 
 | 
            }; 
 | 
            serverView.AddChidren(btnServerText); 
 | 
  
 | 
            #region 密码登录-控件加载 
 | 
            btnServerGo = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(303), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(16), 
 | 
                Height = Application.GetMinRealAverage(16), 
 | 
                UnSelectedImagePath = "Public/Right.png", 
 | 
            }; 
 | 
            serverView.AddChidren(btnServerGo); 
 | 
  
 | 
            #endregion 
 | 
            btnServerBottomLine = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(42), 
 | 
                BackgroundColor = CSS_Color.DividingLineColor, 
 | 
                SelectedBackgroundColor = CSS_Color.MainColor, 
 | 
                Height = Application.GetRealHeight(1), 
 | 
            }; 
 | 
            serverView.AddChidren(btnServerBottomLine); 
 | 
            #endregion 
 | 
  
 | 
            int topPadding = Application.GetRealHeight(12); 
 | 
            #region 账号填写 
 | 
            accountView = new FrameLayout() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = serverView.Bottom + topPadding, 
 | 
                Width = Application.GetRealWidth(319), 
 | 
                Height = Application.GetRealHeight(44), 
 | 
            }; 
 | 
            bodyView.AddChidren(accountView); 
 | 
  
 | 
            btnGlobalRoaming = new Button() 
 | 
            { 
 | 
                Width = Application.GetRealWidth(57), 
 | 
                X = Application.GetRealWidth(9), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                Text = "+" + phoneZoneCode, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
            }; 
 | 
  
 | 
            //跳转国家区号选择界面 
 | 
            EventHandler<MouseEventArgs> eHandler = (sender, e) => { 
 | 
                JLCountrycode.CountryCodeView.Current.Show((countryName, code) => { 
 | 
                    if (!string.IsNullOrEmpty(code)) 
 | 
                    { 
 | 
                        phoneZoneCode = code; 
 | 
                        btnGlobalRoaming.Text = "+" + phoneZoneCode; 
 | 
                    } 
 | 
                }); 
 | 
            }; 
 | 
            btnGlobalRoaming.MouseUpEventHandler += eHandler; 
 | 
  
 | 
            if (registerType == 0) 
 | 
            { 
 | 
                accountView.AddChidren(btnGlobalRoaming); 
 | 
            } 
 | 
  
 | 
            //btnDividingLineVertical_AccountView = new Button() 
 | 
            //{ 
 | 
            //    X = Application.GetRealWidth(65), 
 | 
            //    Gravity = Gravity.CenterVertical, 
 | 
            //    Width = 1, 
 | 
            //    Height = Application.GetRealHeight(20), 
 | 
            //    BackgroundColor = CSS_Color.DividingLineColor, 
 | 
            //}; 
 | 
            //accountView.AddChidren(btnDividingLineVertical_AccountView); 
 | 
  
 | 
            etAccount = new EditText() 
 | 
            { 
 | 
                X = Application.GetRealWidth(49), 
 | 
                Width = Application.GetRealWidth(319 - 78), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                PlaceholderTextColor = CSS_Color.PromptingColor1, 
 | 
                PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber), 
 | 
                IsNumberKeyboardType = true 
 | 
            }; 
 | 
            accountView.AddChidren(etAccount); 
 | 
  
 | 
            btnAccountViewBottomLine = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(42), 
 | 
                BackgroundColor = CSS_Color.DividingLineColor, 
 | 
                Height = Application.GetRealHeight(1), 
 | 
            }; 
 | 
            accountView.AddChidren(btnAccountViewBottomLine); 
 | 
  
 | 
            btnAccountIcon = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(9), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/AccountIcon.png", 
 | 
            }; 
 | 
            if (registerType == 1) 
 | 
            { 
 | 
                accountView.AddChidren(btnAccountIcon); 
 | 
            } 
 | 
            #endregion 
 | 
  
 | 
            #region 密码填写 
 | 
            passwordView = new FrameLayout() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = accountView.Bottom + topPadding, 
 | 
                Width = Application.GetRealWidth(319), 
 | 
                Height = Application.GetRealHeight(44), 
 | 
            }; 
 | 
            bodyView.AddChidren(passwordView); 
 | 
  
 | 
            btnPasswordIcon = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(9), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/PasswordIcon.png", 
 | 
  
 | 
            }; 
 | 
            passwordView.AddChidren(btnPasswordIcon); 
 | 
            //btnDividingLineVertical_PasswordView1 = new Button() 
 | 
            //{ 
 | 
            //    X = Application.GetRealWidth(65), 
 | 
            //    Gravity = Gravity.CenterVertical, 
 | 
            //    Width = 1, 
 | 
            //    Height = Application.GetRealHeight(20), 
 | 
            //    BackgroundColor = CSS_Color.DividingLineColor, 
 | 
            //}; 
 | 
            //passwordView.AddChidren(btnDividingLineVertical_PasswordView1); 
 | 
  
 | 
            etPassword = new EditText() 
 | 
            { 
 | 
                X = Application.GetRealWidth(49), 
 | 
                Width = Application.GetRealWidth(319 - 78), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                PlaceholderTextColor = CSS_Color.PromptingColor1, 
 | 
                PlaceholderText = Language.StringByID(StringId.PlsRegisterPassword), 
 | 
                SecureTextEntry = true, 
 | 
            }; 
 | 
            passwordView.AddChidren(etPassword); 
 | 
  
 | 
            #region 密码登录-控件加载 
 | 
            btnVisiblePassword = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(295), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/HidePasswordIcon.png", 
 | 
                SelectedImagePath = "LoginIcon/ShowPasswordIcon.png", 
 | 
            }; 
 | 
            passwordView.AddChidren(btnVisiblePassword); 
 | 
  
 | 
            #endregion 
 | 
            btnPasswordViewBottomLine = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(42), 
 | 
                BackgroundColor = CSS_Color.DividingLineColor, 
 | 
                SelectedBackgroundColor = CSS_Color.MainColor, 
 | 
                Height = Application.GetRealHeight(1), 
 | 
            }; 
 | 
            passwordView.AddChidren(btnPasswordViewBottomLine); 
 | 
            #endregion 
 | 
  
 | 
            #region 确认密码填写 
 | 
            repeatPasswordView = new FrameLayout() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = passwordView.Bottom + topPadding, 
 | 
                Width = Application.GetRealWidth(319), 
 | 
                Height = Application.GetRealHeight(44), 
 | 
            }; 
 | 
            bodyView.AddChidren(repeatPasswordView); 
 | 
  
 | 
            btnRepeatPasswordIcon = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(9), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/PasswordIcon.png", 
 | 
  
 | 
            }; 
 | 
            repeatPasswordView.AddChidren(btnRepeatPasswordIcon); 
 | 
            //btnRepeatDividingLineVertical_PasswordView1 = new Button() 
 | 
            //{ 
 | 
            //    X = Application.GetRealWidth(65), 
 | 
            //    Gravity = Gravity.CenterVertical, 
 | 
            //    Width = 1, 
 | 
            //    Height = Application.GetRealHeight(20), 
 | 
            //    BackgroundColor = CSS_Color.DividingLineColor, 
 | 
            //}; 
 | 
            //repeatPasswordView.AddChidren(btnRepeatDividingLineVertical_PasswordView1); 
 | 
  
 | 
            etRepeatPassword = new EditText() 
 | 
            { 
 | 
                X = Application.GetRealWidth(49), 
 | 
                Width = Application.GetRealWidth(319 - 78), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                PlaceholderTextColor = CSS_Color.PromptingColor1, 
 | 
                PlaceholderText = Language.StringByID(StringId.PlsRegisterRepeatPassword), 
 | 
                SecureTextEntry = true, 
 | 
            }; 
 | 
            repeatPasswordView.AddChidren(etRepeatPassword); 
 | 
  
 | 
            #region 密码登录-控件加载 
 | 
            btnRepeatVisiblePassword = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(295), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/HidePasswordIcon.png", 
 | 
                SelectedImagePath = "LoginIcon/ShowPasswordIcon.png", 
 | 
            }; 
 | 
            repeatPasswordView.AddChidren(btnRepeatVisiblePassword); 
 | 
  
 | 
            #endregion 
 | 
  
 | 
            btnRepeatPasswordViewBottomLine = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(42), 
 | 
                BackgroundColor = CSS_Color.DividingLineColor, 
 | 
                SelectedBackgroundColor = CSS_Color.MainColor, 
 | 
                Height = Application.GetRealHeight(1), 
 | 
            }; 
 | 
            repeatPasswordView.AddChidren(btnRepeatPasswordViewBottomLine); 
 | 
  
 | 
            #endregion 
 | 
  
 | 
            #region 验证码填写 
 | 
            verificationCodeView = new FrameLayout() 
 | 
            { 
 | 
                X = Application.GetRealWidth(28), 
 | 
                Y = repeatPasswordView.Bottom + topPadding, 
 | 
                //Y = Application.GetRealHeight(335), 
 | 
                Width = Application.GetRealWidth(319), 
 | 
                Height = Application.GetRealHeight(44), 
 | 
            }; 
 | 
            bodyView.AddChidren(verificationCodeView); 
 | 
  
 | 
            btnVerificationCodeIcon = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(9), 
 | 
                Gravity = Gravity.CenterVertical, 
 | 
                Width = Application.GetMinRealAverage(20), 
 | 
                Height = Application.GetMinRealAverage(20), 
 | 
                UnSelectedImagePath = "LoginIcon/VerificationCodeIcon.png", 
 | 
            }; 
 | 
            verificationCodeView.AddChidren(btnVerificationCodeIcon); 
 | 
  
 | 
            //btnDividingLineVertical_VerificationCodeView1 = new Button() 
 | 
            //{ 
 | 
            //    X = Application.GetRealWidth(65), 
 | 
            //    Gravity = Gravity.CenterVertical, 
 | 
            //    Width = 1, 
 | 
            //    Height = Application.GetRealHeight(20), 
 | 
            //    BackgroundColor = CSS_Color.DividingLineColor, 
 | 
            //}; 
 | 
            //verificationCodeView.AddChidren(btnDividingLineVertical_VerificationCodeView1); 
 | 
  
 | 
            etVerificationCode = new EditText() 
 | 
            { 
 | 
                X = Application.GetRealWidth(49), 
 | 
                Width = Application.GetRealWidth(61 + 84), 
 | 
                TextAlignment = TextAlignment.CenterLeft, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                PlaceholderTextColor = CSS_Color.PromptingColor1, 
 | 
                PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode), 
 | 
                IsNumberKeyboardType = true 
 | 
            }; 
 | 
            verificationCodeView.AddChidren(etVerificationCode); 
 | 
  
 | 
            btnGetVerificationCode_Phone = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(219), 
 | 
                Width = Application.GetRealWidth(100), 
 | 
                TextID = StringId.GetVerificationCode, 
 | 
                SelectedTextColor = CSS_Color.MainColor, 
 | 
                TextColor = CSS_Color.PromptingColor1, 
 | 
                TextAlignment = TextAlignment.CenterRight, 
 | 
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel, 
 | 
            }; 
 | 
            verificationCodeView.AddChidren(btnGetVerificationCode_Phone); 
 | 
  
 | 
            btnGetVerificationCode_Mail = new Button() 
 | 
            { 
 | 
                X = Application.GetRealWidth(219), 
 | 
                Width = Application.GetRealWidth(100), 
 | 
                TextID = StringId.GetVerificationCode, 
 | 
                SelectedTextColor = CSS_Color.MainColor, 
 | 
                TextColor = CSS_Color.PromptingColor1, 
 | 
                TextAlignment = TextAlignment.CenterRight, 
 | 
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel, 
 | 
                Visible = false 
 | 
            }; 
 | 
            verificationCodeView.AddChidren(btnGetVerificationCode_Mail); 
 | 
  
 | 
            btnVerificationCodeViewBottomLine = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(42), 
 | 
                BackgroundColor = CSS_Color.DividingLineColor, 
 | 
                SelectedBackgroundColor = CSS_Color.MainColor, 
 | 
                Height = Application.GetRealHeight(1), 
 | 
            }; 
 | 
            verificationCodeView.AddChidren(btnVerificationCodeViewBottomLine); 
 | 
  
 | 
            #endregion 
 | 
  
 | 
            btnRegister = new Button() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = verificationCodeView.Bottom + Application.GetRealHeight(42), 
 | 
                //Y = Application.GetRealHeight(421), 
 | 
                Width = Application.GetRealWidth(220), 
 | 
                Height = Application.GetRealWidth(44), 
 | 
                Radius = (uint)Application.GetRealWidth(22), 
 | 
                SelectedBackgroundColor = CSS_Color.MainColor, 
 | 
                BackgroundColor = CSS_Color.PromptingColor1, 
 | 
                TextID = StringId.Register, 
 | 
                TextSize = CSS_FontSize.SubheadingFontSize, 
 | 
                TextColor = CSS_Color.MainBackgroundColor, 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
            }; 
 | 
            bodyView.AddChidren(btnRegister); 
 | 
  
 | 
            LoadEventList(); 
 | 
        } 
 | 
  
 | 
  
 | 
        /// <summary> 
 | 
        /// 注册成功之后自动登录 
 | 
        /// </summary> 
 | 
        void LoadEvent_AutoLogin(string account, string password) 
 | 
        { 
 | 
            Dialog dialog = new Dialog(); 
 | 
  
 | 
            FrameLayout frame = new FrameLayout() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = Application.GetRealHeight(198), 
 | 
                Width = Application.GetRealWidth(288), 
 | 
                Height = Application.GetRealHeight(206), 
 | 
                BackgroundColor = CSS_Color.MainBackgroundColor, 
 | 
                Radius = (uint)Application.GetRealWidth(12), 
 | 
                BorderWidth = 0, 
 | 
                BorderColor = 0x00000000, 
 | 
            }; 
 | 
            dialog.AddChidren(frame); 
 | 
  
 | 
            Button btnAccountText = new Button() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = Application.GetRealHeight(40), 
 | 
                Height = Application.GetRealHeight(17 + 14 + 14), 
 | 
                IsMoreLines = true, 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextColor = CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS_FontSize.TextFontSize, 
 | 
                Text = account, 
 | 
            }; 
 | 
            frame.AddChidren(btnAccountText); 
 | 
  
 | 
            Button btnTipRegisterSuccess = new Button() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = Application.GetRealHeight(123), 
 | 
                Height = Application.GetRealHeight(30), 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextColor = CSS_Color.MainColor, 
 | 
                TextSize = CSS_FontSize.SubheadingFontSize, 
 | 
                TextID = StringId.CongratulationsRegistration, 
 | 
            }; 
 | 
            frame.AddChidren(btnTipRegisterSuccess); 
 | 
  
 | 
            Button btnAutoLoginTip = new Button() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = btnTipRegisterSuccess.Bottom, 
 | 
                Height = Application.GetRealHeight(17 + 8), 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextColor = CSS_Color.PromptingColor1, 
 | 
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel, 
 | 
                TextID = StringId.AutomaticallyLogin, 
 | 
            }; 
 | 
            frame.AddChidren(btnAutoLoginTip); 
 | 
  
 | 
            Button btnHeadImage = new Button() 
 | 
            { 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Y = Application.GetRealHeight(150), 
 | 
                Width = Application.GetRealWidth(84), 
 | 
                Height = Application.GetRealWidth(84), 
 | 
                Radius = (uint)Application.GetRealWidth(42), 
 | 
                BorderColor = 0x00000000, 
 | 
                BorderWidth = 0, 
 | 
                UnSelectedImagePath = "LoginIcon/2.png", 
 | 
            }; 
 | 
            dialog.AddChidren(btnHeadImage); 
 | 
  
 | 
            dialog.Show(); 
 | 
  
 | 
            new Thread(() => 
 | 
            { 
 | 
                Thread.Sleep(1500); 
 | 
                Application.RunOnMainThread(() => 
 | 
                { 
 | 
                    ////创建登录线程 
 | 
                    //var loginThread = LoadThread_Login(account, password); 
 | 
                    //waitPage = new Loading(); 
 | 
                    //new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage); 
 | 
                    dialog.Close(); 
 | 
  
 | 
                    var isPhone = registerType == 0; 
 | 
                    AutoLoginAction?.Invoke(account, password, isPhone); 
 | 
                }); 
 | 
            }) 
 | 
            { IsBackground = true }.Start(); 
 | 
        } 
 | 
  
 | 
        //#region 登录线程部分 
 | 
        ///// <summary> 
 | 
        ///// 加载登录线程 
 | 
        ///// </summary> 
 | 
        //Thread LoadThread_Login(string account,string password) 
 | 
        //{ 
 | 
        //    var loginThread = new Thread(() => 
 | 
        //    { 
 | 
        //        try 
 | 
        //        { 
 | 
        //            //登录 
 | 
        //            var loginResult = LoadMethod_Login(account,password); 
 | 
        //            if (loginResult) 
 | 
        //            { 
 | 
        //                //获取住宅信息 
 | 
        //                var getResidencesResult = LoadMethod_GetResidences(); 
 | 
        //                if (getResidencesResult) 
 | 
        //                { 
 | 
        //                    /* 
 | 
        //                     * Wait : 推送注册 
 | 
        //                     */ 
 | 
  
 | 
        //                    Application.RunOnMainThread(() => 
 | 
        //                    { 
 | 
        //                        waitPage.RemoveFromParent(); 
 | 
        //                        waitPage = null; 
 | 
  
 | 
        //                        //跳转页面---- 
 | 
        //                        MainPage.GoUserPage(); 
 | 
        //                    }); 
 | 
        //                } 
 | 
        //            } 
 | 
        //        } 
 | 
        //        catch (Exception ex) 
 | 
        //        { 
 | 
        //            MainPage.Log($"LoginPage : {ex.Message}"); 
 | 
        //        } 
 | 
        //    }) 
 | 
        //    { IsBackground = true }; 
 | 
        //    return loginThread; 
 | 
        //} 
 | 
  
 | 
        ///// <summary> 
 | 
        ///// 调用登录接口登录 
 | 
        ///// </summary> 
 | 
        //bool LoadMethod_Login(string account, string password) 
 | 
        //{ 
 | 
        //    var result = false; 
 | 
        //    //调用登录接口 
 | 
        //    var loginResult = pm.LoginByPassword(account, password); 
 | 
        //    if (loginResult.Code == StateCode.SUCCESS) 
 | 
        //    { 
 | 
        //        var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(loginResult.Data.ToString()); 
 | 
        //        // UserInfo.Current = new UserInfo 
 | 
        //        //{ 
 | 
        //        //    userType = revertData.userType, 
 | 
        //        //    accountString = account, 
 | 
        //        //    password = password, 
 | 
        //        //    lastTime = DateTime.Now, 
 | 
        //        //    ID = revertData.userId, 
 | 
        //        //    loginTokenString = revertData.headerPrefix + revertData.accessToken, 
 | 
        //        //    refreshToken = revertData.refreshToken, 
 | 
        //        //    userName = revertData.name 
 | 
        //        //}; 
 | 
        //        UserInfo.Current.userType = revertData.userType; 
 | 
        //        UserInfo.Current.AccountString = account; 
 | 
        //        //UserInfo.Current.password = password; 
 | 
        //        UserInfo.Current.LastTime = DateTime.Now; 
 | 
        //        UserInfo.Current.ID = revertData.userId; 
 | 
        //        UserInfo.Current.LoginTokenString = revertData.headerPrefix + revertData.accessToken; 
 | 
        //        UserInfo.Current.RefreshToken = revertData.refreshToken; 
 | 
        //        UserInfo.Current.userName = revertData.name; 
 | 
  
 | 
        //        UserInfo.Current.SaveUserInfo(); 
 | 
        //        MainPage.Log("登录成功。"); 
 | 
        //        result = true; 
 | 
        //    } 
 | 
        //    else 
 | 
        //    { 
 | 
        //        //登录失败 
 | 
        //        IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code); 
 | 
        //        Application.RunOnMainThread(() => 
 | 
        //        { 
 | 
        //            btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2; 
 | 
        //            btnPasswordViewBottomLine.Height = Application.GetRealHeight(2); 
 | 
        //        }); 
 | 
        //    } 
 | 
        //    return result; 
 | 
        //} 
 | 
  
 | 
        ///// <summary> 
 | 
        ///// 获取住宅列表 
 | 
        ///// </summary> 
 | 
        //bool LoadMethod_GetResidences() 
 | 
        //{ 
 | 
        //    var result = false; 
 | 
        //    var responsePack = pm.GetHomePager(); 
 | 
        //    if (responsePack == StateCode.SUCCESS) 
 | 
        //    { 
 | 
        //        //2020-11-13 待确认,没有住宅,不算登录成功 
 | 
        //        if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0) 
 | 
        //        { 
 | 
        //            result = true; 
 | 
        //        } 
 | 
        //    } 
 | 
        //    else 
 | 
        //    { 
 | 
        //        IMessageCommon.Current.ShowErrorInfoAlter(responsePack); 
 | 
        //    } 
 | 
        //    return result; 
 | 
        //} 
 | 
        //#endregion 
 | 
    } 
 | 
} 
 |