winform 如何在dataGridView数据源前加上一个复选框用于选择相应数据 ,并且点击按钮时只保留选择的数据
时间: 2024-03-03 15:51:15 浏览: 81
要实现在 DataGridView 数据源前加上一个复选框用于选择相应数据,并且在点击按钮时只保留选择的数据,可以按照以下步骤进行:
1. 在 DataGridView 中添加一个列,并设置其类型为 DataGridViewCheckBoxColumn,代码如下:
```
// 创建一个 DataGridViewCheckBoxColumn
var checkBoxColumn = new DataGridViewCheckBoxColumn();
checkBoxColumn.HeaderText = "选择";
checkBoxColumn.Name = "checkBoxColumn";
// 将新列插入到 DataGridView 的第一个位置
dataGridView1.Columns.Insert(0, checkBoxColumn);
```
2. 绑定数据源,代码如下:
```
dataGridView1.DataSource = dataSource;
```
其中,`dataSource` 是你的数据源。
3. 在按钮的 Click 事件中,遍历 DataGridView 中的每一行,判断复选框是否被选中,如果被选中,则将该行数据添加到一个新的列表中。最后,将新的列表设置为 DataGridView 的数据源,代码如下:
```
List<YourDataType> selectedData = new List<YourDataType>();
foreach (DataGridViewRow row in dataGridView1.Rows)
{
if (row.Cells["checkBoxColumn"].Value != null && (bool)row.Cells["checkBoxColumn"].Value == true)
{
selectedData.Add((YourDataType)row.DataBoundItem);
}
}
dataGridView1.DataSource = selectedData;
```
其中,`YourDataType` 是你的数据类型。
这样,只有被选中的数据会显示在 DataGridView 中。
阅读全文