Пример #1
0
        /// <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);
            }
        }
Пример #2
0
        /// <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);
                }
            }
        }