使用 LINQ 根据记录 ID 获取最大 DataGridViewRow
Get max DataGridViewRow based on Record ID using LINQ
我正在尝试获取具有最大记录 ID 值的 DataGridViewRow。
我能够自己获取记录 ID,但我需要自己找到该行。
这是我获取最大记录 ID 的代码,它工作正常:
var addedRow =
dataGridView.Rows
.Cast<DataGridViewRow>()
.Where(r => r.Cells[Glossary.RowType].Value.ToString().Equals(Glossary.RowTypeCustom))
.Select(r => Convert.ToInt(r.Cells[Glossary.RecordId].Value))
.Max();
我试过了:
.Max(r => r.Cells[Glossary.RecordId].Value);
我不清楚如何获取该行本身以便我可以将重点放在它上面:
dataGridView.CurrentCell = addedRow;
试试用这个。
var addedRow =
dataGridView.Rows
.Cast<DataGridViewRow>()
.Where(r => r.Cells[Glossary.RowType].Value.ToString().Equals(Glossary.RowTypeCustom))
.OrderByDescending(r => Convert.ToInt(r.Cells[Glossary.RecordId].Value))
.FirstOrDefault();
希望对您有所帮助。
我正在尝试获取具有最大记录 ID 值的 DataGridViewRow。 我能够自己获取记录 ID,但我需要自己找到该行。
这是我获取最大记录 ID 的代码,它工作正常:
var addedRow =
dataGridView.Rows
.Cast<DataGridViewRow>()
.Where(r => r.Cells[Glossary.RowType].Value.ToString().Equals(Glossary.RowTypeCustom))
.Select(r => Convert.ToInt(r.Cells[Glossary.RecordId].Value))
.Max();
我试过了:
.Max(r => r.Cells[Glossary.RecordId].Value);
我不清楚如何获取该行本身以便我可以将重点放在它上面:
dataGridView.CurrentCell = addedRow;
试试用这个。
var addedRow =
dataGridView.Rows
.Cast<DataGridViewRow>()
.Where(r => r.Cells[Glossary.RowType].Value.ToString().Equals(Glossary.RowTypeCustom))
.OrderByDescending(r => Convert.ToInt(r.Cells[Glossary.RecordId].Value))
.FirstOrDefault();
希望对您有所帮助。