C# 如果panel1中所有textBox都为空 不用foreach
时间: 2024-09-16 18:03:37 浏览: 36
C# Winform遍历控件(窗体、Panel的子控件)Controls
3星 · 编辑精心推荐
如果你想要检查`panel1`内的所有TextBox是否都为空,并且不想使用`foreach`循环,你可以利用LINQ(Language Integrated Query,语言集成查询)的特性,如`Where`和`All`方法,来达到目的。以下是相应的代码:
```csharp
bool allTextboxesAreNotEmpty = panel1.Controls.OfType<TextBox>()
.All(txt => txt.Text != "");
if (allTextboxesAreNotEmpty) {
Console.WriteLine("所有TextBox内容都不为空");
} else {
Console.WriteLine("存在至少一个空的TextBox");
}
```
`OfType<TextBox>()`用于获取Panel1中所有的TextBox实例,然后`All`方法会对这些TextBox的`Text`属性进行检查,只要有一个TextBox的内容为`null`或空字符串,`All`就会返回`false`,表示不是所有TextBox都为空。
阅读全文