我有一个没有几列的数据网格-
网格的标题是超链接,我在运行时设置其值,如下所示:
string strQ1 = "<a href='somePage.aspx?ID=1'>gfgytyty<a>";
dtGrid.Columns[0].Header = strq1;
string strQ2 = "<a href='somePage.aspx?ID=2'>yhtryrtuyu<a>";
dtGrid.Columns[1].Header = strq2;
and so on...
它工作正常。
现在假设我想按名称获取datatgrid的特定列的索引,但是我无法获取它。
我试过了
int colIndex = dtGrid.Columns.IndexOf(dtGrid.Columns[strQ2]);
这应该返回1作为columnIndex,但返回-1,
另外,dtGrid.Columns [strQ2]给我空值。
我在这里做错了什么?
最佳答案
尝试使用LINQ FirstOrDefault首先获取对象,然后再使用.IndexOf(object):
dtGrid.Columns.IndexOf(dtGrid.Columns.FirstOrDefault(c => c.Header == strQ2));
关于c# - 如何通过列名获取列索引?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31404400/