using database; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Forms { public partial class FormClient : Form { private Abstractions bd; public FormClient(Abstractions _bd) { InitializeComponent(); bd = _bd; } private void loadData() { // Получаем список клиентов List clients = bd.GetClients(); // Очищаем dataGridView перед заполнением новыми данными dataGridView.Rows.Clear(); // Предварительно определяем столбцы, если это не было сделано ранее if (dataGridView.ColumnCount == 0) { dataGridView.Columns.Add("Id", "ID"); dataGridView.Columns.Add("Name", "Name"); dataGridView.Columns.Add("Surname", "Surname"); dataGridView.Columns.Add("Phone", "Phone"); dataGridView.Columns.Add("Email", "Email"); } // Заполняем dataGridView данными из списка клиентов foreach (Client client in clients) { dataGridView.Rows.Add(client.Id, client.Name, client.Surname, client.Phone, client.Email); } } // Создание новой записи клиента private void buttonCreate_Click(object sender, EventArgs e) { Client newClient = new Client { Name = textBoxName.Text, Surname = textBoxSurname.Text, Phone = textBoxPhone.Text, Email = textBoxEmail.Text }; bd.AddClient(newClient); // Обновляем отображение данных loadData(); } // Обновление выбранной записи клиента private void buttonUpdate_Click(object sender, EventArgs e) { if (dataGridView.SelectedRows.Count > 0) { DataGridViewRow row = dataGridView.SelectedRows[0]; int clientId = Convert.ToInt32(row.Cells["Id"].Value); Client updatedClient = new Client { Id = clientId, Name = textBoxName.Text, Surname = textBoxSurname.Text, Phone = textBoxPhone.Text, Email = textBoxEmail.Text }; bd.UpdateClient(updatedClient); // Обновляем отображение данных loadData(); } } // Удаление выбранной записи клиента private void buttonDelete_Click(object sender, EventArgs e) { if (dataGridView.SelectedRows.Count > 0) { DataGridViewRow row = dataGridView.SelectedRows[0]; int clientId = Convert.ToInt32(row.Cells["Id"].Value); bd.DeleteClient(clientId); // Обновляем отображение данных loadData(); } } private void FormClient_Load(object sender, EventArgs e) { loadData(); } private void dataGridView_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex >= 0) { DataGridViewRow row = dataGridView.Rows[e.RowIndex]; textBoxName.Text = row.Cells["Name"].Value.ToString(); textBoxSurname.Text = row.Cells["Surname"].Value.ToString(); textBoxPhone.Text = row.Cells["Phone"].Value.ToString(); textBoxEmail.Text = row.Cells["Email"].Value.ToString(); } } } }