private void ButtonDeleteUser_Click(object sender, EventArgs e) { Log.Debug(TAG, "ButtonDeleteUser_Click"); AppCompatButton buttonDeleteUser = sender as AppCompatButton; buttonDeleteUser.Enabled = false; UserCardButtonOk.Enabled = false; UserCardButtonOk.Text = GetText(Resource.String.ok_mute_button_with_remove_user); UserName.Enabled = false; UserEmail.Enabled = false; UserPhone.Enabled = false; UserAlarmSubscribing.Enabled = false; UserCommandsAllowed.Enabled = false; UserCardSubHeader.Text = GetText(Resource.String.delete_user_card_sub_title); UserCardHeader.Text = GetText(Resource.String.delete_user_card_header); UserCardSubHeader.SetTextColor(Color.IndianRed); buttonDeleteUser.SetTextColor(Color.Gray); AppCompatTextView appCompatTextView = new AppCompatTextView(this) { Text = GetText(Resource.String.footer_text_with_remove_user), TextSize = 15 }; appCompatTextView.SetTextColor(Color.Red); appCompatTextView.SetWidth(3); UserFooterLayout.AddView(appCompatTextView); AppCompatButton buttonConfirmDeleteUser = new AppCompatButton(this) { Text = GetText(Resource.String.button_confirm_remove) }; buttonConfirmDeleteUser.SetTextColor(Color.DarkRed); buttonConfirmDeleteUser.Click += new EventHandler((sender, eventArg) => { lock (DatabaseContext.DbLocker) { using (DatabaseContext db = new DatabaseContext(gs.DatabasePathBase)) { UserModel user = db.Users.Find(userId); db.Users.Remove(user); db.SaveChanges(); StartActivity(typeof(UsersListActivity)); } } }); buttonConfirmDeleteUser.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.WrapContent); UserFooterLayout.AddView(buttonConfirmDeleteUser); }
protected override void OnCreate(Bundle savedInstanceState) { Log.Debug(TAG, "OnCreate"); base.OnCreate(savedInstanceState); UserFooterLayout = FindViewById <LinearLayout>(Resource.Id.user_footer_layout); int user_id = Intent.Extras.GetInt(nameof(UserModel.Id), 0); if (user_id < 1) { string err_title = GetText(Resource.String.err_title_2); UserName.Text = err_title; UserName.Enabled = false; UserEmail.Text = err_title; UserEmail.Enabled = false; UserPhone.Text = err_title; UserPhone.Enabled = false; UserAlarmSubscribing.Enabled = false; UserCommandsAllowed.Enabled = false; UserCardSubHeader.Text = err_title; UserCardSubHeader.Enabled = false; UserCardButtonOk.Enabled = false; return; } UserModel user = null; lock (DatabaseContext.DbLocker) { using (DatabaseContext db = new DatabaseContext(gs.DatabasePathBase)) { user = db.Users.Find(user_id); } } userId = user.Id; UserName.Text = user.Name; UserEmail.Text = user.Email; UserPhone.Text = user.Phone; UserAlarmSubscribing.Checked = user.AlarmSubscriber; UserCommandsAllowed.Checked = user.CommandsAllowed; TelegramUserModel telegramUser = null; lock (DatabaseContext.DbLocker) { using (DatabaseContext db = new DatabaseContext(gs.DatabasePathBase)) { telegramUser = db.TelegramUsers.FirstOrDefault(x => x.LinkedUserId == user.Id); } } if (telegramUser != null) { TelegramAccount.SetSelection(TelegramUsers.Keys.ToList().IndexOf(telegramUser.Id)); } UserCardHeader.Text = GetText(Resource.String.edit_user_title); UserCardSubHeader.Text = GetText(Resource.String.edit_user_sub_title); AppCompatButton buttonDeleteUser = new AppCompatButton(this) { Text = GetText(Resource.String.delete_title) }; buttonDeleteUser.SetTextColor(Color.DarkRed); buttonDeleteUser.Click += ButtonDeleteUser_Click; buttonDeleteUser.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.WrapContent); UserFooterLayout.AddView(buttonDeleteUser); }