[英]Visual Studio Form Designer Showing List of Controls
您不能將TabPage
作為設計器的根,而您可以對Panel
或其他容器控件執行相同操作。 限制是因為, TabPage
只能托管在TabControl
,甚至不能托管在設計器的覆蓋控件中:
無法將 TabPage 添加到“System.Windows.Forms.Design.DesignerFrame+OverlayControl”。 TabPages 只能添加到 TabControls。
當控件的基類具有DocumentDesigner
類型的設計器時,控件可以顯示為設計器的根。 Form
和UserControl
就是這樣的控件,這意味着當您創建新的Form1:Form
或新的UserControl1:UserControl
,由於基類派生自可設計的控件,因此可以在設計器中以 root 身份編輯該類。
我相信您可以通過使用UserControl
來處理您的要求,但出於學習目的(或作為一種解決方法),如果您想讓從Panel
派生的控件可設計,您可以將以下代碼復制到代碼文件中:
public class MyControl: MyDesignableControl
{
}
[Designer(typeof(DocumentDesigner), typeof(IRootDesigner))]
public class MyDesignableControl : Panel
{
}
然后保存它,然后雙擊它,你可以看到你可以像根控件一樣設計它。
然后在完成設計后,將Panel
更改為TabPage
。
此設計器是根設計器,這意味着在設計模式下查看相關文檔時,它為關聯文檔提供根級設計模式視圖。
您可以使用
DesignerAttribute
將DesignerAttribute
與類型相關聯。 有關自定義設計時行為的概述,請參閱擴展設計時支持。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.