使用LINQ返回具有最低项目计数的ListBox

时间:2018-04-22 12:29:06

标签: c# winforms linq

我需要在Form上找到一个6个ListBox,其中包含最少的项目。

如何将ListBox.Item.Count属性与 LINQ 中的扩展方法Min()结合使用,以返回项目数最少的ListBox

我尝试了以下操作,但它不能正常工作:

foreach (var item in Controls.OfType<ListBox>())
{
    if (item.Items.Count <= min)
    {
        listbox = item;
        min = listbox.Items.Count;
    }
}

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题:

ListBox b = Controls
    .OfType<ListBox>()
    .FirstOrDefault(lb => lb.Items.Count == listboxes.Min(l => l.Items.Count));