C#运行时类创建

C#运行时类创建,c#,reflection,propertygrid,C#,Reflection,Propertygrid,我是C#新手,听说可以在运行时创建类。这是真的吗?如果这是真的,你能给我一个简单的例子说明怎么做吗?我想在运行时从配置文件创建一个类,将其用作PropertyGrid控件中的SelectedObject 谢谢你的帮助 您可以使用类来完成此操作。链接的MSDN文档有一个例子。我认为您所追求的是允许您在运行时创建类等。链接包括示例。您可以,使用TypeBuilder-但这不是一件小事;实际上,您是在运行时编写诸如IL之类的低级内容。我偶尔这样做,但我有点疯狂。这两者可能有关联 对于您想要的(Prop

我是C#新手,听说可以在运行时创建类。这是真的吗?如果这是真的,你能给我一个简单的例子说明怎么做吗?我想在运行时从配置文件创建一个类,将其用作PropertyGrid控件中的SelectedObject


谢谢你的帮助

您可以使用类来完成此操作。链接的MSDN文档有一个例子。

我认为您所追求的是允许您在运行时创建类等。链接包括示例。

您可以,使用TypeBuilder-但这不是一件小事;实际上,您是在运行时编写诸如IL之类的低级内容。我偶尔这样做,但我有点疯狂。这两者可能有关联

对于您想要的(PropertyGrid),一个更简单的选项是通过PropertyDescriptor提供运行时属性;我在stackoverflow上有几个这样的“财产袋”示例。这里有一个这样的例子:


但即使与最简单的选择相比,这也是一项工作:使用数据表;添加所需的列和单行,并将行的孪生项从表的DefaultView传递到PropertyGrid。

实际需要做的是在PropertyGrid中显示任意数据。您不需要为此创建新类。您可以只使用自定义类型描述符


签出。

要在运行时创建新类吗?或者运行时已知的类类型的新实例?我想要一个新类,包含新成员和新方法。所有这些都是在运行时添加的。我不知道这是否可行。你真的想要一门新课吗?还是只想在属性网格中显示任意数据?如果是这样,还有更简单的方法。实际上,你甚至不需要一个完整的描述符;一个转换器本身就可以做到这一点。谢谢@Cody-今天上午的胖手指