0
我需要搜索我的DataGridView
中的已知列,并返回包含DateTime
对象的行(匹配时间最短(小于所需的搜索时间))。在DataGridView中查找包含最接近匹配的DateTime对象的行
我已经使用linq在过去搜索通过寻找数据的DataGridView
。但在这种情况下,我一直在寻找的精确匹配,如:
public DataGridViewRow FindRow(DataGridView dgv, string columnID, object searchID)
{
DataGridViewRow row = dgv.Rows
.Cast<DataGridViewRow>()
.Where(r => r.Cells[columnID].Value.Equals(searchID))
.First();
return row;
}
现在我有一个确切的DateTime
对象,在我的DataGridView
包含所有DateTime
对象列。
DateAdded Data1 Data2
12:34:56.012 x y
12:34:56.345 x y
12:34:56.678 x y
在上述情况下,如果我寻找的DateTime
对象 “12:34:56.4”,我想返回包含 “12:34:56.345” 的第二行。
我仍然熟悉linq。 Anytone有什么想法?
您是否保证收集的.Where总是以DateAdded顺序返回?如果不是最后一个元素可能不是你想要的。可能想要添加订单。 – user957902 2012-08-07 15:54:34
伟大的建议!谢谢。 – 2012-08-07 16:56:14