首页 新闻 会员 周边 捐助

有办法获取当前winform项目中的所有窗体名称吗?

1
悬赏园豆:100 [已解决问题] 解决于 2010-12-11 17:32

C# 写的winform 项目,在窗体权限部分,要使用到所有当前项目包含的窗体枚举。

 

有什么办法可以得到当前项目包含的窗体名呢?

 

谢谢大家了。

teclo的主页 teclo | 初学一级 | 园豆:100
提问于:2010-12-11 16:53
< >
分享
最佳答案
0
private void button1_Click(object sender, EventArgs e)
{
List
<string> names = new List<string>();
foreach (var type in this.GetType().Assembly.GetTypes())
{
if (typeof(Form).IsAssignableFrom(type))
{
try
{
using (Form form = Activator.CreateInstance(type) as Form)
{
names.Add(form.Text);
//names.Add(form.name)
}
}
catch
{
Console.WriteLine(
string.Format("类型为 {0} 的窗体没有无参的构造函数,无法获取其名称", type));
}
}
}
}
收获园豆:80
鹤冲天 | 老鸟四级 |园豆:2379 | 2010-12-11 17:14
其他回答(1)
0

总命名空间下所有类进行反射。

收获园豆:20
Astar | 园豆:40805 (高人七级) | 2010-12-11 17:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册