|

掌握MDI窗体操作技巧,轻松实现高效窗口管理
方法一: 直接检测是否已经打开此MDI窗体
- // 是否已经打开了?(用循环来判断)<br>foreach (Form childrenForm in this.MdiChildren)<br>{<br> //检测是不是当前子窗体名称<br> if (childrenForm.Name == "子窗体名称")<br> {<br> //是的话就是把他显示<br> childrenForm.Visible = true;<br> //并激活该窗体<br> childrenForm.Activate();<br> return;<br> }<br>}<br>//下面是打开子窗体<br>Form1 childrenForm = new Form1();<br>childrenForm.MdiParent = this;<br>childrenForm.Show();<br>childrenForm.WindowState = FormWindowState.Maximized;
复制代码
方法二: 将子窗体设成单件:
- namespace WindowsFile<br>{<br> public partial class Form3 : Form<br> {<br> public Form3()<br> {<br> InitializeComponent();<br> }<br> private void Form3_Load(object sender, EventArgs e)<br> {<br> richTextBox1.LoadFile(".\\test.txt", RichTextBoxStreamType.PlainText);<br> }<br> private static Form3 childform = null;<br> public static Form3 Form3Signleton()<br> {<br> if (childform == null)<br> {<br> childform = new Form3();<br> }<br> return childform;<br> }<br> private void Form3_FormClosing(object sender, FormClosingEventArgs e)<br> {<br> try<br> {<br> this.Dispose(true);<br> childform = null;<br> }<br> catch (Exception ex)<br> {<br> MessageBox.Show(ex.ToString());<br> }<br> }<br> }<br>}
复制代码
|
|