获取DataGridViewRow集合中每一行的选定索引

本文关键字:一行 索引 集合 DataGridViewRow 获取 | 更新日期: 2023-09-27 18:07:45

我希望获得与网格视图中的单元格对应的组合框中所选项目的索引。

下面是我使用的:

var cb = (DataGridViewComboBoxCell)row.Cells[1];
fieldIndex = cb.Items.IndexOf((string)cb.Value);

然而,这并没有考虑到选择的值可能与组合框中的另一个值匹配。如何获得为当前行选择的确切索引?

获取DataGridViewRow集合中每一行的选定索引

除非单元格被选中,否则该组合框实际上并不存在。当单元格处于活动状态时,它将被覆盖。您可以在EditingControlShowing事件中访问它。由于这个原因,除非循环遍历数据源并检查值,否则无法获得索引,但是正如前面提到的,由于值可能出现多次,因此您不知道需要哪个索引。通常你不关心选择的下标,你只关心它的值。你确定需要索引吗?如果您正确地对网格使用了数据绑定,那么后备集合将使其字段与网格同步,并且您拥有所有应该关心的数据。