【发布时间】:2021-07-05 21:17:58
【问题描述】:
所以我是软件开发的初学者,在家中练习 C#。
我正在处理一个项目,并且已经到了不确定如何编写功能的地步。
想象一下,在我的解决方案中,我有一个带有下拉菜单的 winform UI。在该下拉列表中,用户可以做出选择并单击按钮来运行程序。根据用户选择的内容,它应该初始化选择的类/对象。
因此下拉菜单将包含以下选项;运行选项一,运行选项二。如果在下拉列表中选择了 runOptionTwo,则单击按钮后,它将执行以下操作: runOptionOne runoptionone = new runOptionOne(); runoptionone.Doaction();
我不想对下拉列表进行字符串检查,因为这将是 if 语句的负载。
是否有根据用户选择初始化特定类的技术或方法。
【问题讨论】:
-
使用反射。您可以使用类名作为字符串并创建实例和调用方法。
-
@AmitVerma:所以用户会看到内部类名?不...
-
“使用反射。” - 为什么?有完全合适的模式,不需要反射。在这里,它甚至没有让任何事情变得更简单!
-
Dictionary似乎是个不错的选择。 -
不要在这里使用反射——这就像用炸弹在你的花园里挖出一株植物。
标签: c# class oop user-interface