如何让一个窗口A始终在另一个窗口B上面?且就算B获得焦点A也要在B上面?
最好给点代码。
对了A,B都可以相互访问对方的Public成员
最好给点代码。
对了A,B都可以相互访问对方的Public成员
解决方案 »
- 怎么使多个文本显示在RichTextBox控件中,求解答!
- 请教个问题, 网络共享
- Private Sub 与Private void的区别?
- 编辑dataGridView的单元格时怎样按ebter后换行啊?
- 请教关于使用DataReader和DataGrid配合使用显示数据的问题
- 如何生成扫雷游戏里的小格子?
- 为啥网页不显示post传入的数据
- 帮忙看看。
- 请教版主和高手兄弟们一个文件读取的问题,我想该有会的兄弟来帮我解决一下吧,我现在很急,多谢了啦!我在线等待,不清晰的可问
- 求助,C#操作sql完整的方法怎样?附疑问一个
- c# combox简单问题
- 控件和Page的Init、 load、PreRender事件顺序疑惑!
frm.ShowDialog();
使用窗体的属性
说起属性关联,上面已经提到过Form.Owner属性,下面笔者根据MSDN文档来比较完整的讲一下,大部分的文字来自MSDN文档,为保证其完整性,对其中一些属性描述进行了扩展。Form.Owner 属性。获取或设置拥有此窗体的窗体。
语法,public Form Owner { get; set; }
若要使某窗体归另一个窗体所有,可为其 Owner 属性分配一个对将成为所有者的窗体的引用。当一个窗体归另一窗体所有时,它便随着所有者窗体最小化和关闭。例如,如果 Form2 归窗体 Form1 所有,则关闭或最小化 Form1 时,Form2 也会关闭或最小化。并且附属窗体从不显示在其所有者窗体后面。可以将附属窗体用于查找和替换窗口之类的窗口,当选定所有者窗体时,这些窗口不应消失。
Form.OwnedForms 属性。获取 Form 对象的数组,这些对象表示此窗体拥有的所有窗体。
语法,public Form[] OwnedForms { get; }
此属性返回包含此窗体拥有的所有窗体的数组。要使某窗体归另一个窗体所有,可调用 AddOwnedForm 方法。分配给所有者窗体的窗体将保持被拥有状态,直到调用了 RemoveOwnedForm 方法。如果窗体是多文档界面 (MDI) 父窗体,则除了当前打开的所有 MDI 子窗体外,此属性将返回所有显示的窗体。
Form.MdiChildren 属性。获取窗体的数组,这些窗体表示以此窗体作为父级的多文档界面 (MDI) 子窗体。
语法,public Form[] MdiChildren { get; }
此属性使您得以获取对当前在某 MDI 父窗体中打开的所有 MDI 子窗体的引用。若要创建 MDI 子窗体,请将要成为 MDI 父窗体的 Form 分配给该子窗体的 MdiParent 属性。可以使用此属性依次通过所有 MDI 子窗体,以执行一些操作,如当 MDI 父窗体关闭时将数据保存到数据库中,或者根据应用程序中执行的操作更新子窗体上的字段。
Form.MdiParent 属性。获取或设置此窗体的当前多文档界面 (MDI) 父窗体。
语法,public Form MdiParent { get; set; }
若要创建 MDI 子窗体,请将要成为 MDI 父窗体的 Form 分配给该子窗体的 MdiParent 属性。可以从某 MDI 子窗体使用此属性来获取所有子窗体都需要的全局信息或者调用对所有子窗体执行操作的方法。
Form.ActiveForm 静态属性。获取此应用程序的当前活动窗体。
语法,public static Form ActiveForm { get; }
表示当前活动窗体,或者如果没有活动窗体,则为空引用。可以使用此方法获得对当前活动窗体的引用,以在该窗体或其控件上执行操作。
Form.ActiveMdiChild 属性。获取当前活动的多文档界面 (MDI) 子窗口。
语法,public Form ActiveMdiChild { get; }
返回表示当前活动的 MDI 子窗口的 Form,或者如果当前没有子窗口,则返回 空引用。
可使用此方法确定 MDI 应用程序中是否有任何打开的 MDI 子窗体。也可使用此方法从 MDI 子窗口的 MDI 父窗体或者从应用程序中显示的其他窗体对该 MDI 子窗口执行操作。
ContainerControl.ParentForm 属性。获取将容器控件分配给的窗体。
语法,public Form ParentForm { get; }
将容器控件分配给的 Form。更多的内容可以参考这里,
谈基于.net平台windows开发中的模式窗体
http://blog.csdn.net/zhzuo/archive/2006/05/05/708941.aspx
frm.Show();
frm.Owner = this;
public static extern void SetWindowPos(IntPtr hwnd, IntPtr hwndInsertAfter,
int X, int Y, int width, int height, int flags);
Form frmA=new Form();
frmA.showDialog();
showDialog()不是show(),这样可以显示模式窗体.
你试下就知道了.保证是你想要的结果.
如: this.TopMost = true;