2015-08-19 65 views
1

當我們需要創建在「常規」框架, 容器控件,我們只需添加如何在緊湊框架中創建用戶容器控件?

using System.ComponentModel; 

和控制類的屬性:

[Designer("System.Windows.Forms.Design.ParentControlDesigner, System.Design", 
      typeof(IDesigner))] 
public partial class MyContainerControl : UserControl 
.... 

然而,在緊湊的框架,這似乎由於DesignerAttributes類不存在,因此是不可能的。

我已經擁有用戶控件,但我需要它在設計時充當容器。
我試過Google搜索的任何東西,但沒有提出任何東西。
有沒有什麼辦法可以創建一個容器用戶控件,但繼承現有的容器控件?

回答

1

UserControl類直接從ContainerControl繼承,它與Form相同的繼承。奇怪的是,Panel從ScrollableControl(ContainerControls父類)繼承,因此儘管它是一個面板,但它不是一個Container。

無論如何,這不是繼承問題。設計時間控制實際上是在一個單獨的程序集中定義的,它使用完整的框架進行編譯,爲您提供屬性(希望在兩者之間共享源代碼)。這是一個完全獨立的控制。

See here

+0

我很抱歉,但我不明白怎麼回答我的問題。當然,用戶控件繼承自ContainerControl,但是如果您不指定'Designer'屬性,則不能在設計時拖拽其他控件(這正是我在緊湊框架中尋找的) –

+0

@ ZoharPeled。這是第二段中的要點。你不能在CF中完成它,你需要創建一個單獨的設計時組件,它是使用完整的框架構建的。 –

相關問題