【发布时间】:2020-06-05 04:13:34
【问题描述】:
我有一个带有 20 个复选框的 wpf 应用程序。 是否有保护变量中选中的复选框数量的功能。 如果还有其他可能使用该数字而不先将其保存在变量中,那也会对我有所帮助。 谢谢!
【问题讨论】:
-
嗨——欢迎来到 Stack Overflow。通过在您的问题中发布一些代码,向我们展示您尝试过的内容对您很有用。看看stackoverflow.com/help/how-to-ask
我有一个带有 20 个复选框的 wpf 应用程序。 是否有保护变量中选中的复选框数量的功能。 如果还有其他可能使用该数字而不先将其保存在变量中,那也会对我有所帮助。 谢谢!
【问题讨论】:
没有任何内置功能,但循环或 Linq 查询应该不会太难。如果你想要表单上的所有复选框,你可以这样做
int count = 0;
for (var control in parent.Children)
{
if (control is CheckBox && ((CheckBox)control).IsChecked)
{
count++;
}
}
或
int count = parent.Children.OfType<CheckBox>()
.Where(cb => cb.IsChecked)
.Count();
如果您有移动特定条件(例如具有特定名称模式的复选框),则只需将其添加到 if 或 Where 子句。
【讨论】: