在我的设计模式分类当中,我选择单例模式作为我第一个要写的设计模式,其一,单例模式简单、容易理解让人接受,其二,单例模式很常用,在实际的Winform窗体应用开发中能够带来更好的客户体验。
单例模式的核心是在应用程序的生命周期中只实例化一次当前类,让整个应用程序中只拥有一个当前类实例化的对象,在Winform应用程序中,我们显示窗体的方法有两种方法:第一种,Show()方法,这种方法当点击多次按钮的时候会显示多个当前的窗体,造成操作不便。第二种,ShowDialog()方法,这种方法显示出窗体之后,我们只能对当前窗体进行操作直到这个窗体关闭之后,用户体验不好。那怎样才能只产生一个窗体,而且不影响对其他窗体的操作?解决这样的问题我们最简单的想法就是如果每次我们单机按钮都使用相同的实例化对象,就只能产生一个窗体了,再使用Show()方法显示窗体就不会影响其他窗体的操作了。
说了这么多,让我们看看怎么在窗体中使用单例模式吧,核心参考代码如下:
public partial class FrmSingleton : Form
{
private static FrmSingleton frm = null;
private FrmSingleton()
{
InitializeComponent();
}
public static FrmSingleton CreateInstrance()
{
if (frm == null)
{
frm = new FrmSi