CodeGo.net>使用LINQ基于记录ID获取最大的DataGridViewRow

我正在尝试获取具有最大记录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();

希望会有所帮助.

上一篇:在设计时将DataGridView.DefaultCellStyle.NullValue设置为null在添加行运行时会引发错误


下一篇:c#-在datagridview上绘制“依赖单元”的函数