关于子 父窗体的简单问题

zhpmy1 2008-09-15 02:21:12
我想让打开的子窗体永远在父窗体之上,并还能操作父窗体,我想到了以下几个办法
在父窗体上打开子窗体时用 show(),但遗憾的是它不能永远在父窗体之上,如果将子窗体设为TopMost顶端显示,却不是我想要的;
用ShowDialog()确同样有遗憾,这样一来就不能操作父窗体了。。。

请高手赐教,我的父窗体不是MDI窗体。

谢谢了
...全文
110 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhpmy1 2008-09-15
  • 打赏
  • 举报
回复
两位朋友,谢谢了。。。
mjjzg 2008-09-15
  • 打赏
  • 举报
回复
第一种方法:让子窗体在主窗体之上而且还可以操作主窗体,但是这样的话子窗体是可以移出主窗体那个大的对话框的
用非模式化对话框
Form1 f=new form1()
F.Owner=this;
F.show();
而你的那种方法是模式化的对话框,即你必须关闭子窗体才能操作主窗体
Form1 f=new form1();
f.showdialog(this);
第二种方法也就是将主窗体变成MDI窗体,这样的话子窗体在主窗体之上而且还可以操作主窗体,并且子窗体不能出主窗体的边界
1.在主窗体中将主窗体的IsMdiContainer属性改成True
2.在主窗体中写要调用的子窗体,如调用f子窗体
f f1=new f(this);
f1.Show()
3.在子窗体f1中在其构造函数中加个参数即如:文件名.主窗体名 自定义变量名
在其代码中加上this.MdiParent=自定义变量名
ZengHD 2008-09-15
  • 打赏
  • 举报
回复
            Form f = new Form();
f.Owner = this;
f.Show();

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧