【发布时间】:2017-03-20 10:10:31
【问题描述】:
我正在尝试遍历解决方案中的所有程序集,获取所有表单并检索每个表单的文本属性,但我真的不知道如何获取值。这是我的代码:
Type formType = typeof(Form);
var assemblies =
AppDomain.CurrentDomain.GetAssemblies();
foreach (var assembly in assemblies)
{
var types = assembly.GetTypes();
foreach (var type in types)
{
if (formType.IsAssignableFrom(type))
{
var properties = type.GetProperties().Where(x => x.Name == "Text");
}
}
}
我无法检索表单文本属性的具体值。我也 试过了
var property = type.GetProperty("Text").GetValue(???, null);
但不知道如何获取当前课程。有任何想法吗?谢谢!
编辑:我也试过
var frm = (Form)Activator.CreateInstance(type)
但如果表单没有无参数构造函数,这将失败。
【问题讨论】:
标签: c# winforms reflection .net-assembly