我有一個由幾個splitcontainer分隔的屏幕。其中一個包含我製作的用戶組件的矩形,這些「矩形」代表醫院病牀。我想要做的是給用戶在這個「用戶組件視圖」和「數據網格視圖」之間切換的選項。C#隱藏並顯示在分離容器頂部的面板
所以我創建了一個面板pnlPatients,我給出了與用戶組件相同的splitcontainer大小。當用戶選擇「更改視圖」時,程序應該在兩種佈局之間切換。
代碼: 嘗試1:
if (pnlPatients.Visible)
pnlPatients.Hide();
else
{
pnlPatients.Show();
pnlPatients.BringToFront();
}
嘗試2:
pnlPatients.Visible = !pnlPatients.Visible;
pnlPatients.Invalidate();
奇怪的是,這兩個嘗試這樣的工作:
用戶首先看到「用戶組件視圖」。 如果他將切換視圖,它會正確顯示在上一個視圖頂部的面板。 如果他再次切換,那麼面板將被正確隱藏。 如果他再次切換視圖,那麼面板將不會顯示。請注意:在調試時,面板的可見屬性正確更改爲TRUE或FALSE。但出於某種原因,只有第一次將其顯示爲TRUE時才能看到面板。
有沒有人有想法?
問候
編輯:我也試過,但沒有更迭:
pnlPatients.Visible = !pnlPatients.Visible;
if (pnlPatients.Visible)
{
pnlPatients.BringToFront();
}
else
{
pnlPatients.SendToBack();
}
什麼是兩個面板的家長? – 2010-09-29 08:25:56
基本的Windows窗體是父窗體。 – Starceaker 2010-09-29 08:32:31