c# - 获取具有特定列的最小整数值的datagridview行的索引的最佳方法是什么
问题描述
谁能告诉我最好/最有效的方法是在具有特定列的最小整数值的数据网格视图中获取行的索引。
我使用 foreach 循环来遍历行集合并比较每行的相应值并存储最小值。每次我找到一个较小的值时,我都会用该值更新我的“最小”变量。这行得通,但我很确定一定有一些 lambda 表达式可以做得更好。有人可以帮忙吗?
这是包含值的列:
dgvItems.Rows[i].Cells["col1"].Value
非常感谢。
解决方案
最好的方法是使用 LINQ 查询,
LINQ 比 for 循环更好看、更易读、更高效
您应该使用 DataGridView 数据源而不是直接使用 DataGridView 数据
DataTable dt = dgv.DataSource as DataTable;
MinRow: var result = dt.Rows.IndexOf(dt.AsEnumerable().OrderBy(x => x["col1"]).First());
MaxRow: var result1 = dt.Rows.IndexOf(dt.AsEnumerable().OrderByDescending(x => x["col1"]).First());
希望这可以帮助你
推荐阅读
- python - 如何使用python获取html页面中的标题和url
- javascript - 我如何在反应js中将数字从输入转换为int
- html - url 路径指向目录时的 HTML 相对表单操作
- flutter - 我无法为 MyFirebaseMessagingService 编写代码,所有的文字都是白色的,我在 android studio
- html - Angular - src(未知)图像
- c++ - 分段错误(核心转储)c ++ linux终端windows 10
- android - Android Kotlin:从彩信中检索发件人的地址或电话号码抛出错误/不起作用
- typescript - 在 TypeScript 中将 .gql 文件解析为 DocumentNode
- pug - 十一和哈巴狗:通过循环哈巴狗博客文章创建博客列表
- ios - iOS 13/14 模态视图控制器解雇检测