- 积分
- 40165
- 好友
- 记录
- 主题
- 帖子
- 听众
- 收听
|
发表于 2013-5-6 10:57:04
|
显示全部楼层
JackFamily 发表于 2013-5-6 10:23
这种方式我也做过,不过太多咯,我能有几十个button,不能用几十个if else 啊! 这样就太多咯
http://www.sufeinet.com/forum.php?mod=viewthread&tid=2190
这样的话那你用就反射调用更简单一点,
[code=csharp] /// <summary>
/// 打开新的子窗体
/// </summary>
/// <param name="strName">窗体的类名</param>
/// <param name="AssemblyName">窗体所在类库的名称</param>
public static void CreateForm(string strName, string AssemblyName)
{
string path = AssemblyName;//项目的Assembly选项名称
string name = strName; //类的名字
Form doc = (Form)Assembly.Load(path).CreateInstance(name);
doc.Show();
}
private void button3_Click(object sender, EventArgs e)
{
//获取单击的Button名称
string btnname = ((Button)sender).Text;
CreateForm("Test."+btnname, "Test");
}[/code]
|
|