寻找创造性的设计模式

时间:2009-03-17 19:53:49

标签: c# design-patterns

我正在尝试找到一种可以用来简化某些对象构造的设计模式。

基于传入参数(自定义类),我将从System.Windows.Forms.Control类创建各种继承器。

例如,如果自定义类的一个成员设置为'ChkBox',我希望我的类返回一个System.Windows.Forms.CheckBox,或者如果该成员是'List',我希望我的类返回一个ComboBox。

public CustomClass()
{
    FieldType type;
}

GetControl(CustomClass type);

常见的是我想要创建的所有类都具有Control作为它的基类。考虑到这一点,我想有一种方法可以只在一个地方设置基类的成员。

你知道我可以用来解决这个问题的任何设计模式吗?

2 个答案:

答案 0 :(得分:8)

答案 1 :(得分:3)

您可以使用工厂方法模式。工厂方法模式的目的是让类开发人员定义用于创建对象的接口,同时保留对要实例化的类的控制。

如需进一步的帮助,您可以看到“头部设计模式”第4章。