一段简单的C#编码,但是问题不知道怎么解决,请大家帮看一下!
private bool checkChildFrmExist(string childFrmName)
{
foreach(Form childFrm in this.MdiChildren)
{
//用子窗体的Name进行判断,如果已经存在则将他激活
if(childFrm.Name == childFrmName)
{
if(childFrm.WindowState == FormWindowState.Minimized)
childFrm.WindowState = FormWindowState.Normal;
childFrm.Activate();
return true;
}
}
return false;
} private void MuUserAdd_Click(object sender, System.EventArgs e) //MuUserAdd_Click是菜单控件,通过点击该按钮打开窗体
{
if (this.checkChildFrmExist("UserAdd") == true) //UserAdd是我要激活打开的窗体
{
return;
}
// 如果该窗体不存在则新生成一个窗体
UserAdd newFrm = new UserAdd();
newFrm.MdiParent = this;
newFrm.Show();
}
我是根据一个用例仿照写的
用例编译很成功
但是我编译完成后提示
"被指定为此窗体的 MdiParent 的窗体不是 MdiContainer。"
程序中断在"newFrm.Show();"处
恳请赐教,不胜感激!
private bool checkChildFrmExist(string childFrmName)
{
foreach(Form childFrm in this.MdiChildren)
{
//用子窗体的Name进行判断,如果已经存在则将他激活
if(childFrm.Name == childFrmName)
{
if(childFrm.WindowState == FormWindowState.Minimized)
childFrm.WindowState = FormWindowState.Normal;
childFrm.Activate();
return true;
}
}
return false;
} private void MuUserAdd_Click(object sender, System.EventArgs e) //MuUserAdd_Click是菜单控件,通过点击该按钮打开窗体
{
if (this.checkChildFrmExist("UserAdd") == true) //UserAdd是我要激活打开的窗体
{
return;
}
// 如果该窗体不存在则新生成一个窗体
UserAdd newFrm = new UserAdd();
newFrm.MdiParent = this;
newFrm.Show();
}
我是根据一个用例仿照写的
用例编译很成功
但是我编译完成后提示
"被指定为此窗体的 MdiParent 的窗体不是 MdiContainer。"
程序中断在"newFrm.Show();"处
恳请赐教,不胜感激!
解决方案 »
- winfrom中调用一个jsp页面传值问题
- 数剧库查询的代码问题!
- 简化提问,这样减少函数参数个数的方法是否可行,有什么弊端
- 求中国最贵的OA
- 在公司上班的朋友给我指点下,1,网址后边有的后缀是.dll这是怎么回事,2,在软件公司上班大家都做的是什么啊,(具体的哈)
- 如何获取一个Excel的Sheet的名称
- 菜鸟寻求解决方案
- 有关StreamWriter写文件,这样的写法有什么错??
- 如何用循环遍历,将DataTable的某一列中所有的行以字符串连接起来?
- 如何用lamda或者某种查询的方式查找父控件?
- 网络问题:如何判断对方Socket断开!
- 问:基类怎样来访问派生类的数据,比如Form访问派生类MyForms的数据。
//FillMoneyfrm为子窗体
FillMoneyfrm fillmoney = null;
foreach(Form f in this.MdiChildren)
{
if(f is FillMoneyfrm)
{
fillmoney = (FillMoneyfrm)f;
break;
}
}
if(fillmoney != null)
{
fillmoney.Show();
fillmoney.Focus();
}
else
{
fillmoney = new FillMoneyfrm();
fillmoney.MdiParent = this;
fillmoney.Show();
fillmoney.Focus();
}