c# - 检查选择跨越多少行 DataGridView
问题描述
DataGridView.SelectedRows
似乎只计算完全选中的行。
如果我从例如单列中选择多个单元格,DataGridView.SelectedRows
似乎总是返回 0(如果有多个列)。
如何获取用户选择跨越的行数?
解决方案
我想你必须唯一地计算它们:
HashSet<int> rowIndexes = new HashSet<int>();
foreach (DataGridViewCell cell in dgv.SelectedCells) {
if (!rowIndexes.Contains(cell.RowIndex)) {
rowIndexes.Add(cell.RowIndex);
}
}
selectedRowCount = rowIndexes.Count;
推荐阅读
- jquery - 如何使用 jQuery 更改按钮的背景颜色?
- kubernetes - 找不到名称为 ingress-controller/ingress-default-backend 的服务
- c - 用于传入字符串的 c 字符串操作
- formatting - 将 skinparam 应用于 PlantUML 序列图中的单个组
- xamarin.forms - 如果应用程序被取消,我如何编写一个可以工作的后台服务
- r - 如何在图表中添加误差范围的阴影
- python - 在 Python 中查找函数 x = a*sin(x) 的所有根
- java - Spring在所有控制器方法中执行一个方法而不注入服务
- javascript - 最后两个数字前加逗号,三个数字后保留点
- javascript - javascript中基于对象的开关替代方案