好友
阅读权限10
听众
最后登录1970-1-1
|
25吾爱币
本帖最后由 lbl283743758 于 2022-1-22 15:54 编辑
背景介绍:主窗体FrmMain用SplitContainer(name:spConcainer)分成spConcainer.Panel1和spConcainer.Panel2两个容器;
想把子窗体FrmAddStudent 通过“添加学员按钮(name:btnAddStudent)”按钮 控制显示在主窗体FrmMain的右边部分pConcainer.Panel2容器中;
“添加学员”按钮(name:btnAddStudent)布置在主窗体FrmMain的左侧,代码如下:
private void btnAddStudent_Click(object sender, EventArgs e)
{
//首先判断当前容器中是否已经存在窗体
foreach (Control item in this.spContainer.Panel2.Controls)
{
if (item is Form)
{
Form objControl =(Form)item;
objControl.Close();
}
}
FrmAddStudent objFrm = new FrmAddStudent();
objFrm.TopLevel = false;//将子窗体设置成非顶级控件
objFrm.WindowState = FormWindowState.Maximized;//让子窗体最大化显示
objFrm.FormBorderStyle = FormBorderStyle.None;//去掉窗体的边框
objFrm.Parent = this.spContainer.Panel2;//指定子窗体显示的容器
objFrm.Show();
}
问题:
点“添加学员”按钮(name:btnAddStudent)后,子窗体FrmAddStudent 不能正常显示在主窗体的右侧spConcainer.Panel2容器中,见下图。请问这是啥原因造成的,该如何处理?
原因已找到:
spConcainer.Panel2的属性的字体被我不小心设定成特别大的了。改为常规大小就可以了。
|
-
这是异常状态的图片
-
这是子窗体正常的外观图
-
子窗体最大化去掉后,显示成这样。也不正常
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|