[英]How to make an exception on hide all panels?
我剛剛看到了另一個問題的答案,該問題隱藏了表單中的所有面板。 所以我想知道如何使此代碼例外。 這段代碼在C#中。
foreach (Control c in this.Controls) { if (c is Panel) c.Visible = false; }
我試圖添加另一個,如果檢查c是否是我的面板,但這不起作用。
如果(c是MyPanel)繼續;
MyPanl是我的面板的名稱。
錯誤列表說應該是A constant value is expected
有人可以幫忙嗎?
根據您的評論,您可以嘗試使用c == MyPanel
作為條件而不是c is MyPanel
因為... is ...
檢查類型而不是compare實例。
foreach (Control c in this.Controls)
{
if (c == MyPanel) continue;
else if (c is Panel) c.Visible = false;
}
我將使用linq where
設置條件以使代碼更清晰
var panels = this.Controls
.Cast<Control>()
.Where(c => c != MyPanel && c is Panel);
foreach (var c in panels)
{
c.Visible = false;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.