我有DataGridView
类似于下面的内容:
ID Name Data1 Data2
1 MM X 1000
2 ST Y 1000
3 EC Z 1000
4 JT T 1000
我还有一个对我很重要的行索引列表。
List<int> myList = new List<int>();
myList.Add(1);
myList.Add(2);
现在我要做的是从我的DataGridView
中的Data1列中获取与这些行索引相对应的值。所以我想要得到的(在这个例子中)是一些包含“Y”和“Z”的数据类型。
我不想迭代DataGridView
,因为那里有大量的数据样本。有没有办法用LINQ做到这一点?我还是LINQ的初学者。
答案 0 :(得分:1)
使用Enumerable.Select
方法,如下所示:
IEnumerable<string> columnValues = myList.Select(x => data.Rows[x].Cells["Data1"].Value);
此代码假定您对DataGridView
的引用存储在变量data
中。
答案 1 :(得分:0)
你可以使用
int id= (int)myList[0];
string[] Data1= (from DataRow row1 in Datatable.Rows
where row1["ID"] == id
select row1["Data1"].ToString()).ToArray();
现在您可以使用与列表值
对应的字符串数组来访问data1