我有一個類被聲明爲:複雜類聲明混淆表單設計器?
public class Foo<T> : Panel where T : Control, IFooNode , new()
{
...
}
我說這手工測試,但我最終將需要的東西,可以顯示在窗體設計器。窗體設計器不喜歡這一點,它說:
Could not find type 'FooTestNameSpace.Foo'. Please make sure that the assembly that contains this type is referenced. If this type is a part of your development project, make sure that the project has been successfully built.
有趣的是,我也得到一個警告類似,但包括我在變量的聲明中使用的通用類型。 警告是:
Could not find type 'FooTestNameSpace.Foo<FooTestNameSpace.FooNodeType>'. Please make sure that the assembly that contains this type is referenced. If this type is a part of your development project, make sure that the project has been successfully built.
在我簡單的Form1類的聲明是:
private FooTestNameSpace.Foo myFoo;
(FooNodeType實際上只是一個還沒有被使用一個輔助屬性標籤的子類,但它確實實現IFooNode )。
所以我的問題......有了這種類型的設置,我怎樣才能讓Foo在窗體設計器上顯示,或者至少讓它承認Foo是合法的?有沒有可以處理這個問題的Designer屬性?我真的不在乎Foo控件是否顯示爲空框,只要它完全顯示!
設計人員很適合簡單的拖放操作。對於更復雜的班級簽名,您可能會期待太多。 – 2009-10-20 03:00:27
如果您還準確地解釋了您想要使用該視圖類來完成的任務,並且可能會顯示更多代碼,那可能會更有幫助。您完全有可能錯過了使用聲明,但無法從您的摘錄中看出來。 – 2009-10-20 03:14:55