如何获取Datagridview的选定列名

时间:2011-12-08 08:59:16

标签: c# winforms datagridview

我找到了几个关于获取所选单元格的行号的示例/问题,但关于获取列名称的数量并不多。

我想检查列是否已命名:频率。我检查用户是否选择2行bofore做我的东西。

我尝试了以下方法:

if (Dat.SelectedColumns[0].ToString() == "Frequency"
    || Dat.SelectedColumns[1].ToString() == "Frequency")

这不起作用,我最初的想法是我需要检查headernames,我的下一次尝试:

if (Dat.SelectedColumns[0].HeaderText == "Frequency"
   || Dat.SelectedColumns[1].HeaderText == "Frequency")

这不起作用,因为selectedColumns保持为null。 (没有超出范围的例外)

有没有办法获取所选列的名称/检查名称是否为“频率”?

编辑:

// get the Column name of the selected data
int Xcor = Dat.CurrentCellAddress.X;
string ColumnName = Dat.Columns[Xcor].Name;

这种方法在我的情况下不起作用,我需要获得2个ColumnNames,而不仅仅是当前选中的

1 个答案:

答案 0 :(得分:3)

我不确定您为网格设置的SelectionMode,因为您需要查找特定列,最好选择CellSelect

在这种情况下,您有dataGridView1.SelectedCells,并且通过遍历每个,您将获得RowIndex以及ColumnIndex,这将帮助您识别特定列。

如果这不符合您的意图,请更新问题。