c#窗体个人通讯录系统代码
时间: 2023-12-22 13:06:31 浏览: 115
好的,以下是一个简单的C#窗体个人通讯录系统代码示例:
1. 创建数据库表
在SQL Server中创建一个名为Contact的数据库,包含一个名为Contacts的表,表结构如下:
```
CREATE TABLE Contacts
(
ID INT PRIMARY KEY IDENTITY,
Name VARCHAR(50),
Phone VARCHAR(20),
Email VARCHAR(50)
)
```
2. 创建C#窗体项目
在Visual Studio中创建一个Windows Forms应用程序,然后添加一个DataGridView控件和若干个文本框和按钮控件,用于实现添加、编辑、删除、搜索联系人的功能。
3. 连接数据库
在代码中添加以下代码,连接到数据库:
```
string connectionString = "Data Source=(local);Initial Catalog=Contact;Integrated Security=True";
SqlConnection connection = new SqlConnection(connectionString);
```
4. 显示联系人
在窗体加载时,从数据库中读取联系人信息,显示在DataGridView控件中:
```
private void Form1_Load(object sender, EventArgs e)
{
string query = "SELECT * FROM Contacts";
SqlDataAdapter dataAdapter = new SqlDataAdapter(query, connection);
DataTable dataTable = new DataTable();
dataAdapter.Fill(dataTable);
dataGridView1.DataSource = dataTable;
}
```
5. 添加联系人
在添加按钮的Click事件中,将输入的联系人信息插入到数据库中,并刷新DataGridView控件:
```
private void btnAdd_Click(object sender, EventArgs e)
{
string name = txtName.Text;
string phone = txtPhone.Text;
string email = txtEmail.Text;
string query = $"INSERT INTO Contacts (Name, Phone, Email) VALUES ('{name}', '{phone}', '{email}')";
SqlCommand command = new SqlCommand(query, connection);
connection.Open();
command.ExecuteNonQuery();
connection.Close();
Form1_Load(sender, e);
}
```
6. 编辑联系人
在DataGridView控件中双击某一行时,将该行对应的联系人信息显示在文本框中,用户可以编辑后保存到数据库中:
```
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
DataGridViewRow row = dataGridView1.Rows[e.RowIndex];
txtName.Text = row.Cells[1].Value.ToString();
txtPhone.Text = row.Cells[2].Value.ToString();
txtEmail.Text = row.Cells[3].Value.ToString();
}
```
在保存按钮的Click事件中,将修改后的联系人信息更新到数据库中,并刷新DataGridView控件:
```
private void btnSave_Click(object sender, EventArgs e)
{
string name = txtName.Text;
string phone = txtPhone.Text;
string email = txtEmail.Text;
int id = int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());
string query = $"UPDATE Contacts SET Name='{name}', Phone='{phone}', Email='{email}' WHERE ID={id}";
SqlCommand command = new SqlCommand(query, connection);
connection.Open();
command.ExecuteNonQuery();
connection.Close();
Form1_Load(sender, e);
}
```
7. 删除联系人
在删除按钮的Click事件中,从数据库中删除选中的联系人,并刷新DataGridView控件:
```
private void btnDelete_Click(object sender, EventArgs e)
{
int id = int.Parse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString());
string query = $"DELETE FROM Contacts WHERE ID={id}";
SqlCommand command = new SqlCommand(query, connection);
connection.Open();
command.ExecuteNonQuery();
connection.Close();
Form1_Load(sender, e);
}
```
8. 搜索联系人
在搜索按钮的Click事件中,根据输入的关键字从数据库中检索联系人信息,并显示在DataGridView控件中:
```
private void btnSearch_Click(object sender, EventArgs e)
{
string keyword = txtSearch.Text;
string query = $"SELECT * FROM Contacts WHERE Name LIKE '%{keyword}%' OR Phone LIKE '%{keyword}%' OR Email LIKE '%{keyword}%'";
SqlDataAdapter dataAdapter = new SqlDataAdapter(query, connection);
DataTable dataTable = new DataTable();
dataAdapter.Fill(dataTable);
dataGridView1.DataSource = dataTable;
}
```
以上是一个简单的C#窗体个人通讯录系统代码示例,希望可以帮到您。
阅读全文