/// <summary> /// двойной клинк в таблице - редактирование пользователя /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void DView_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { user = new User(); try { DataGridViewRow dr = dView.CurrentRow; user.Id = (int)dr.Cells[0]?.Value; user.Login = dr.Cells[1].Value?.ToString(); user.Password = (int)dr.Cells[2]?.Value; user.Address = dr.Cells[3].Value?.ToString(); user.Phone = dr.Cells[4].Value?.ToString(); user.IsAdmin = (int)dr.Cells[5].Value; UsersFields f = new UsersFields(user, false); if (f.ShowDialog() == DialogResult.OK) { for (int i = 1; i < ds.Tables["Users"].Columns.Count; i++) { try { ds.Tables["Users"].Rows[dView.CurrentRow.Index][i] = typeof(User).GetProperties()[i].GetValue(user); } catch (Exception ex) { ShowMessage(ex.Message); } } adapter.Update(ds, "Users"); GetUsers(showAdmin); } } catch (Exception ex) { ShowMessage(ex.Message); } }
/// <summary> /// Обработка нажатия кнопки создать пользователя /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bCreateUser_Click(object sender, EventArgs e) { user = new User(); UsersFields f = new UsersFields(user, true); if (f.ShowDialog() == DialogResult.OK) { if (SearchLogin(user.Login)) { ShowMessage("Введенный логин уже существует"); f.ShowDialog(); } else { DataRow row = ds.Tables["Users"].NewRow(); for (int i = 1; i < ds.Tables["Users"].Columns.Count; i++) { try { row[i] = typeof(User).GetProperties()[i].GetValue(user); } catch (Exception ex) { ShowMessage(ex.Message); } } ds.Tables["Users"].Rows.Add(row); adapter.Update(ds, "Users"); GetUsers(showAdmin); } } }