N多的子窗体,使用了同样的设置。几乎相同的定义格式。请问,有什么好的解决方案吗?我试着写窗体组,不成功。求教。
如:
TW frm0 = new TW();//业务办理
frm0.MdiParent = this;
frm0.FormBorderStyle = FormBorderStyle.None;
frm0.ControlBox = false;
frm0.Text = "";
frm0.Tag = "业务办理";
frm0.AutoScaleMode = AutoScaleMode.Inherit;
frm0.MinimizeBox = false;
frm0.MaximizeBox = false;
frm0.WindowState = FormWindowState.Maximized;
frm0.Show();
CW frm1 = new CW();//客户管理
frm1.MdiParent = this;
frm1.FormBorderStyle = FormBorderStyle.None;
frm1.ControlBox = false;
frm1.Text = "";
frm1.Tag = "客户管理";
frm1.AutoScaleMode = AutoScaleMode.Inherit;
frm1.MinimizeBox = false;
frm1.MaximizeBox = false;
frm1.WindowState = FormWindowState.Maximized;
frm1.Show();
.....................
太多窗体的话,上面的方法也太笨了
如:
TW frm0 = new TW();//业务办理
frm0.MdiParent = this;
frm0.FormBorderStyle = FormBorderStyle.None;
frm0.ControlBox = false;
frm0.Text = "";
frm0.Tag = "业务办理";
frm0.AutoScaleMode = AutoScaleMode.Inherit;
frm0.MinimizeBox = false;
frm0.MaximizeBox = false;
frm0.WindowState = FormWindowState.Maximized;
frm0.Show();
CW frm1 = new CW();//客户管理
frm1.MdiParent = this;
frm1.FormBorderStyle = FormBorderStyle.None;
frm1.ControlBox = false;
frm1.Text = "";
frm1.Tag = "客户管理";
frm1.AutoScaleMode = AutoScaleMode.Inherit;
frm1.MinimizeBox = false;
frm1.MaximizeBox = false;
frm1.WindowState = FormWindowState.Maximized;
frm1.Show();
.....................
太多窗体的话,上面的方法也太笨了
/// 名称:checkChildFrmExist
/// 功能:判断子窗体的多次打开方法,如果子窗体打开或最小化都激活此窗体,否则打开子窗体
/// 编写人:libinguest
/// 编写时间:2009-04-30
/// </summary>
/// <param name="MdiForm">MDI窗体类</param>
/// <param name="ChildForm">子窗体类</param>
public static void checkChildFrmExist(Form MdiForm, Form ChildForm)
{
foreach (Form tempChildForm in MdiForm.MdiChildren)
{
if (tempChildForm.Name == ChildForm.Name.ToString()) //用子窗体的Name进行判断是否已实例化,如果存在则将他激活
{
if (tempChildForm.WindowState == FormWindowState.Minimized)
{
tempChildForm.WindowState = FormWindowState.Normal;
}
tempChildForm.Activate();
return;
}
}
ChildForm.MdiParent = MdiForm;
ChildForm.Show();
}
这样相同的属性就不用设置了
至于创建具体的Form,看需要,也有方法,也不用去一个个的生成
比如 form[100] form[1] .MdiParent = this;
form[1] .FormBorderStyle = FormBorderStyle.None;
form[1] .ControlBox = false;
form[1] .Text = "";
form[1] .Tag = "客户管理";
form[1] .AutoScaleMode = AutoScaleMode.Inherit;
form[1] .MinimizeBox = false;
form[1] .MaximizeBox = false;
form[1] .WindowState = FormWindowState.Maximized;
form[1] .Show();