Vb.net 如何在vb中对选中的复选框项进行排序并将其发送到标签

Vb.net 如何在vb中对选中的复选框项进行排序并将其发送到标签,vb.net,sorting,checkbox,Vb.net,Sorting,Checkbox,我想写一个机械工程软件来计算厨房油烟机排气流量并做一个报告。 首先,用户将检查计算按钮,然后用户将检查气体或电气,然后用户将进入该区域。 例如,用户随机选择两种类型(共有40种抽油烟机),然后选择气体并进入区域。我将根据这些选择进行计算,但我的问题是:我无法通过对所选内容进行排序将它们写入第二个表单。 您可以看到标签1、标签2等。我可以使用if语句将所选框文本发送到标签: If CheckBox1.Checked Then Form2.Label1.Text = La

我想写一个机械工程软件来计算厨房油烟机排气流量并做一个报告。 首先,用户将检查计算按钮,然后用户将检查气体或电气,然后用户将进入该区域。

例如,用户随机选择两种类型(共有40种抽油烟机),然后选择气体并进入区域。我将根据这些选择进行计算,但我的问题是:我无法通过对所选内容进行排序将它们写入第二个表单。

您可以看到标签1、标签2等。我可以使用if语句将所选框文本发送到标签:

If CheckBox1.Checked Then
            Form2.Label1.Text = Label5.Text
End If
但我不知道会选择哪一种,我将有40种类型,但在报告部分(表格2),我将有最多10种类型(因为厨房设计的总体布局)。所以我想对所选的进行排序,并添加没有任何空行的报表


我真的很抱歉我的英语不好。

你一直说“排序”,但我想你实际上是指“过滤”。您是说您只希望第二个表单显示选中“计算”框的第一个表单中的行吗?如果你真的是指“排序”,那么你到底打算按什么排序?是的,我确实想要这个。我之所以说排序,是因为我认为我必须将选中的数据排序为1到10,并且在报表标签上显示数据1到10。“Filter”是绝对正确的,谢谢。因此,如果您想要列表中的前十个或更少的复选框,那么您可以这样做:
myList.Where(Function(cb)cb.Checked)。取(10)
。您只需首先将所有
复选框
控件放入列表中即可。然后,您可以使用这些
复选框
控件从您之前创建的
字典
中获取其他数据。事实上,这可以附加到前面的表达式:
myList.Where(Function(cb)cb.Checked)。Take(10)。Select(Function(cb)myDictionary(cb))
。这将根据前10个或更少的复选框返回存储在
字典中的值。