我想在Windows窗體窗體上的運行時移除和添加控件。問題是,控件必須與另一個具有完全相同的大小,位置和錨點。動態移除/添加Windows窗體窗體上的控件
如果用戶打開窗口並滿足某個標準,我想刪除舊的控件並將其替換爲另一個控件。
所以,我嘗試這樣做:
RichTextBox InsideText = new RichTextBox();
InsideText.Location = InsideBox.Location;
InsideText.Size = InsideBox.Size;
Controls.Remove(InsideBox);
Controls.Add(InsideText);
但是,正如預期的,它沒有工作。 InsideBox
未被刪除,InsideText
未被添加。
我在做什麼錯?有沒有更好的方法呢?
您是否檢查過InsideText的Visible屬性是否爲真? – Jonathan 2010-09-02 14:51:02
這基本上是我如何做到這一點,它適用於我。從父控件的集合中刪除控件時,它將消失。你確定要從正確的集合中刪除它嗎? – 2010-09-02 14:59:01
我不認爲我曾經有動態創建/刪除控件的問題。你確定可見是真的嗎?你是否嘗試過設置X和Y,寬度和高度,而不是使用大小和位置(我總是使用X,Y,寬度,高度,我認爲的舊習慣),這是我能夠想到的唯一區別和這個例子。如果還有其他我們可以看到的相關代碼,可能會有所幫助。 – FrustratedWithFormsDesigner 2010-09-02 15:32:43