我有一个TreeView,其中包含节点。用户单击节点时,应创建并显示相应的CrystalReport文档。
例如,我的节点名称为:“PeriodReport1”,“PeriodReport2”,“PeriodReport3”。我的CrystalReport文档的名称相同:“PeriodReport1”,“PeriodReport2”,“PeriodReport3”。
如何创建和显示正确类型的Crystal Reports文档?我可以做这样的事情:
select case reportName
case "PeriodReport1"
dim myReport as new PeriodReport1
case "PeriodReport2"
dim myReport as new PeriodReport2
...
end select
但是,也许有更好的方法可以做到这一点。我可以使用反射来做到这一点吗?
最佳答案
只要报告具有默认的无参数构造函数,即您可以说新的PeriodReport ...
Activator.CreateInstance(Type.GetType("namespace.typename"))