我正在使用C#制作Windows窗体应用程序。
我的一个表单包含5个组框,每个框包含6个复选框。 我需要计算所有选中的复选框。
目前我的编码如下:
int NumOfRacks1 = groupBoxPace.Controls.OfType<CheckBox>()
.Count(cb => cb.Checked);
然而,我必须重复上述5次,然后将所有变量加在一起以获得答案。我确信有一种更聪明的方法可以减少代码。
我尝试将其中三个组合如下:
var allRacks = groupBoxSamsung.Controls.OfType<CheckBox>().Concat(groupBoxPace.Controls.OfType<CheckBox>().Concat(groupBox780.Controls.OfType<CheckBox>()));
但这并没有像预期的那样奏效。
有谁知道实现这个目标的方法?
答案 0 :(得分:0)
我需要计算所有选中的复选框。
不工作,因为你不算数。试试这个。
var items = (groupBox1.Controls.OfType<CheckBox>()
.Concat(groupBox2.Controls.OfType<CheckBox>()))
.Where(ch => ch.Checked == true).Count();
你有你的数量。