📜  datagridview鼠标点击事件c#(1)

📅  最后修改于: 2023-12-03 15:00:20.974000             🧑  作者: Mango

DataGridView 鼠标点击事件

DataGridView 是 C# 中常用的一个控件,它可以显示表格数据并且提供了很多方便的操作方法。鼠标点击事件是在 DataGridView 中经常用到的一个事件类型,它可以让开发者在用户点击 DataGridView 中的某行或者某单元格时做出相应的响应或处理。在本文中,我们将介绍一些在 DataGridView 控件中使用鼠标点击事件的基本方法和技巧。

DataGridView 控件概述

DataGridView 控件是 C# 中用于显示数据表格的一种控件。它提供了列宽、排序、过滤、编辑、选择等丰富的功能,同时还支持多种数据源(如绑定到 DataTable、List<> 等数据集合)。DataGridView 控件的创建和使用非常简单,我们只需要在工具箱中将其拖出,或者手动在代码中创建即可。以下是一个使用 DataGridView 控件的基本示例:

// 创建一个表格控件
DataGridView dataGridView1 = new DataGridView();

// 设置数据源为 DataTable
DataTable dt = new DataTable();
dataGridView1.DataSource = dt;

// 设置控件大小和位置
dataGridView1.Location = new Point(10, 10);
dataGridView1.Size = new Size(300, 200);

// 添加表格列和行
dt.Columns.Add("ID", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Rows.Add(1, "Alice");
dt.Rows.Add(2, "Bob");

// 将控件添加到窗口中
this.Controls.Add(dataGridView1);
DataGridView 鼠标点击事件

DataGridView 的鼠标点击事件包括:CellMouseDown、ColumnHeaderMouseClick、RowHeaderMouseClick、CellContentClick、CellClick 等类型,其中 CellMouseDown 是最常用的事件类型之一,它可以在用户点击 DataGridView 中的某个单元格时响应。

以下是一个 CellMouseDown 的示例:

private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
    if (e.RowIndex >= 0 && e.ColumnIndex >= 0)  // 点击的是某个单元格
    {
        string value = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
        MessageBox.Show($"你点击的是第 {e.RowIndex + 1} 行、第 {e.ColumnIndex + 1} 列,它的值为 {value}");
    }
}

上面的代码会在用户点击单元格时弹出一个提示框,其中会显示所点击单元格的行列坐标以及它的值。注意,上述代码中加了一段判断条件,用于排除用户点击 DataGridView 的表头等非数据单元格的情况。

除了 CellMouseDown 之外,还有 ColumnHeaderMouseClick 和 RowHeaderMouseClick 两种鼠标点击事件类型,分别对应用户在点击表格列头和行头时响应。

如果需要在 DataGridView 中响应鼠标点击事件,我们只需要在打开设计器界面,选择 DataGridView 控件,在属性窗口中点击“事件”图标,在对应的事件上双击即可打开对应的响应函数。

参考资料