首先,在窗体加载时,确保DataGridView已经绑定到数据源,并且其多选功能已启用:
```csharp
dataGridView1.MultiSelect = true;
dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
```
接下来,可以通过事件处理程序来捕获用户的选择动作。例如,当用户点击一个按钮或者触发其他事件时,可以获取当前选中的行:
```csharp
private void GetSelectedRows()
{
foreach (DataGridViewRow row in dataGridView1.SelectedRows)
{
if (!row.IsNewRow) // 确保不是新增加但未保存的行
{
// 在这里处理每一行的数据
string selectedValue = row.Cells["ColumnName"].Value.ToString();
MessageBox.Show("Selected Value: " + selectedValue);
}
}
}
```
在这个例子中,`SelectedRows`属性返回了一个包含所有选中行的集合。通过遍历这个集合,我们可以访问每个选中的行及其单元格内容。
另外,如果只需要获取单个选中的行,可以直接使用`CurrentRow`属性:
```csharp
if (dataGridView1.CurrentRow != null)
{
string currentCellValue = dataGridView1.CurrentRow.Cells["ColumnName"].Value.ToString();
MessageBox.Show("Current Row Value: " + currentCellValue);
}
```
这种方法适用于只有一个活动行的情况,比如在编辑模式下。
最后,记得在设计时设置DataGridView的属性以支持这些操作。例如,确保设置了合适的列名和数据绑定方式,以便能够正确地访问每一行的数据。
通过上述方法,你可以有效地从DataGridView中获取用户所选中的行,并根据需求进行进一步的操作或处理。这些技巧可以帮助开发者更高效地管理表格数据,提升用户体验。