單例模式(singleton)的意思就是只有一個實例。單例模式確保某一個類只有一個實例,而且自行實例化並向整個系統提供這個實例。這個類稱為單例類。
在多窗體界面中,如果要加入一個“關於”的窗體,用於顯示軟件的信息,那么可以用到單例模式,因為“關於窗體”類只需一個實例,下面是實例的代碼:
"關於窗體":
using System.Windows.Forms; namespace Keleyi.Com { public partial class AboutForm : Form { private static AboutForm _instance; private AboutForm() { InitializeComponent(); } private void AboutForm_FormClosing(object sender, FormClosingEventArgs e) { if (e.CloseReason== CloseReason.UserClosing) { this.Hide(); e.Cancel = true; } } public static AboutForm GetInstance() { if (_instance == null) _instance = new AboutForm(); return _instance; } } }
調用代碼:
AboutForm m_about; m_about = AboutForm.GetInstance(); m_about.MdiParent = this; m_about.Show();