我正在创建一个数据来自数据库的系统。此数据表示必须动态创建的特定对象。
现在让对象工作到我使用的构建框架。我需要像这样在我的班级顶部设置对象。
public class PageGeneratorWidget
{
public ColorPickerWidget com1 { get; protected set; }
public PageGeneratorWidget(string dataId){
//SOME CODE LIKE
//com1.Type = "flat";
}
}
动态设置对象的属性不是问题。我遇到的问题是我不知道如何动态创建
public ColorPickerWidget com1 {get; protected set;}
有人知道这方面的解决方案吗?
由于
答案 0 :(得分:0)
您的解决方案隐藏在Generics中。
您的代码应该如下所示。
public class PageGeneratorWidget<T>
{
public T com1 { get; protected set; }
public PageGeneratorWidget(string dataId){
//SOME CODE LIKE
//com1.Type = "flat";
}
}
通过声明类的对象
来使用它PageGeneratorWidget<ColorPickerWidget> my object =
new PageGeneratorWidget<ColorPickerWidget>();
答案 1 :(得分:0)
您可以在PageGeneratorWidget的构造函数中创建对象:
public class PageGeneratorWidget
{
public ColorPickerWidget com1 { get; protected set; }
public PageGeneratorWidget(string dataId){
//SOME CODE LIKE
//com1.Type = "flat";
com1 = new ColorPickerWidget(); // Use color Picker Widget constructor
}
}
您也可以让PageGeneratorWidget
构造函数获取ColorPickerWidget
类型的参数,并将com1设置为该值。