我已经创建了一个通用的用户控件,如下所示:
public class MyControl<T>: TabControl
{
}
如果T
是原始类型,那么我将使我的用户控件成为非泛型类型,并且将给用户一个选项作为属性来选择类型,但是T
可以是任何类类型
以编程方式添加时,我的usercontrol效果很好,但是,当我从工具箱添加它时,存在3个问题:
TabControl
)我希望看到一个正常的TabControl,并且它没有通用性
喜欢:
private MyControl myControl1;
到
private MyControl<AClass> myControl1;
和
this. myControl1 = new MyControl();
到
this. myControl1 = new MyControl<AClass>();
我知道,添加控件后,它无法预测类的种类,我并不期待魔术,但是有没有一种方法,使用户不必在每次添加控件时都去找设计师并以某种方式解决财产问题?
这让我感到不安,为什么即使拥有一个通用声明也会对设计人员造成错误(尽管在运行该应用程序时它可以毫无问题地运行)。