2013-06-25 41 views
1

我正在使用爲每個檢查面板中的標籤。但是,我想檢查2個面板。我無法找出一種方法來檢查兩個面板。以下是我的嘗試,並沒有工作。ForEach &&檢查2面板

foreach (Control x in panel1.Controls && panel2.Controls) 

當我把& &它獲得下紅線。它與一個面板工作,但是當我添加第二個它不起作用。任何建議的幫助將是偉大的!

下面的代碼適用於一個面板。

的foreach(在panel1.Controls控制X)

回答

5

&&是一個內置的運算符並返回一個布爾值。如果你想遍歷兩個控制組,你需要把它們放到一個列表,例如與union擴展方法:

foreach(Control x in panel1.Controls.Cast<Control>().Union(
        panel2.Controls.Cast<Control>())) 
+0

'ControlCollection'沒有實現'Union' ... –

+0

@SimonWhitehead當然你是對的。強制轉換應該返回一個IEnumerable <>。 – Matten

+0

謝謝大家!它完美解決了!感謝您的學習課程。 –

0

Foreach循環不允許二元運算符在它。閱讀更多關於此Here

0

您可以使用嵌套foreach,並將其放置在內部foreach循環if檢查。

+0

不!嵌套意味着您經常穿越每個內部物品,因爲您有外部物品。替代方案將是兩個連續的循環。 – Matten