Задание
Напишите здесь задание на программу в том виде, в котором Вам его предоставили (это повышает продажи, так как клиенты ищут работы по заданию).Если задания не было - удалите этот пункт.
Функционал программы
- добавление, изменение, удаление факультетов;
- добавление, изменение, удаление студентов;
- добавление, изменение, удаление групп;
- поиск и сортировка.
Фрагмент программного кода
using System;
using System.Data;
using System.Windows.Forms;
using System.Data.OleDb;
using System.ComponentModel;
namespace FacultyApp
{
public partial class StudentsForm : Form
{
public StudentsForm()
{
InitializeComponent();
}
OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Пк\OneDrive\Desktop\Faculty.mdb");
private void Populate()
{
conn.Open();
string query = "select * from Студенты";
OleDbDataAdapter da = new OleDbDataAdapter(query, conn);
OleDbCommandBuilder builder = new OleDbCommandBuilder(da);
var ds = new DataSet();
da.Fill(ds);
StudentsDGV.DataSource = ds.Tables[0];
conn.Close();
}
private void guna2Button1_Click(object sender, EventArgs e)
{
if (IdTb.Text == "" || StudentTb.Text == "" || AddressTb.Text == "" || PhoneTb.Text == "")
{
MessageBox.Show("Missing information");
}
else
{
try
{
conn.Open();
string query = "insert into Студенты values (" + IdTb.Text + ", '" + StudentTb.Text + "', '" + AddressTb.Text + "', '" + PhoneTb.Text + "')";
OleDbCommand cmd = new OleDbCommand(query, conn);
cmd.ExecuteNonQuery();
MessageBox.Show("Студент добавлен");
conn.Close();
Populate();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
private void StudentsForm_Load(object sender, EventArgs e)
{
Populate();
}
private void guna2Button3_Click(object sender, EventArgs e)
{
if (IdTb.Text == "")
{
MessageBox.Show("Missing information");
}
else
{
try
{
conn.Open();
string query = "delete from Студенты where [Код]=" + IdTb.Text + ";";
OleDbCommand cmd = new OleDbCommand(query, conn);
cmd.ExecuteNonQuery();
MessageBox.Show("Студент удален");
conn.Close();
Populate();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
private void StudentsDGV_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
IdTb.Text = StudentsDGV.SelectedRows[0].Cells[0].Value.ToString();
StudentTb.Text = StudentsDGV.SelectedRows[0].Cells[1].Value.ToString();
AddressTb.Text = StudentsDGV.SelectedRows[0].Cells[2].Value.ToString();
PhoneTb.Text = StudentsDGV.SelectedRows[0].Cells[3].Value.ToString();
}
private void guna2Button2_Click(object sender, EventArgs e)
{
if (IdTb.Text == "" || StudentTb.Text == "" || AddressTb.Text == "" || PhoneTb.Text == "")
{
MessageBox.Show("Missing information");
}
else
{
try
{
conn.Open();
string query = "update Студенты set Студент ='" + StudentTb.Text + "', Адрес ='" + AddressTb.Text + "', " +
"Телефон='" + PhoneTb.Text + "' where [Код]=" + IdTb.Text + ";";
OleDbCommand cmd = new OleDbCommand(query, conn);
cmd.ExecuteNonQuery();
MessageBox.Show("Студент обновлен");
conn.Close();
Populate();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
private void guna2Button4_Click(object sender, EventArgs e)
{
if (StudentsDGV.SortOrder == SortOrder.Ascending)
{
StudentsDGV.Sort(StudentsDGV.Columns[1], ListSortDirection.Descending);
}
else
{
StudentsDGV.Sort(StudentsDGV.Columns[1], ListSortDirection.Ascending);
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
for (int i = 0; i < StudentsDGV.RowCount - 1; i++)
{
string str = StudentsDGV.Rows[i].Cells[1].Value.ToString();
if (str.Contains(textBox1.Text) == true)
{
StudentsDGV.Rows[i].Selected = true;
}
else
{
StudentsDGV.Rows[i].Selected = false;
}
if (textBox1.Text == "")
{
StudentsDGV.Rows[i].Selected = false;
}
}
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
for (int i = 0; i < StudentsDGV.RowCount - 1; i++)
{
string str = StudentsDGV.Rows[i].Cells[1].Value.ToString();
if (str == textBox2.Text)
{
StudentsDGV.Rows[i].Selected = true;
}
else
{
StudentsDGV.Rows[i].Selected = false;
}
}
}
}
}
Скриншот архива с проектом

Пояснения по запуску программы
Запустить VS 2019, подключить базу данных (смотри инструкцию на моём YouTube - канале). Поменять строку подключения к базе данных на каждой форме. (Делается это просто. В обозревателе серверов кликаем по базе данных и открываем окно свойств. В окне свойств будет строка подключения). Запустить проект на выполнение.
Телеграм
-