本文最后更新于 2019年 4月 20號(hào) 下午 2點(diǎn) 10分,并同步發(fā)布于 :
如果我們不希望用戶打開(kāi)兩個(gè)應(yīng)用程序?qū)嵗? 可以通過(guò)下面的方式來(lái)實(shí)現(xiàn)此目的
首先, 刪除App.xaml
文件, 新建一個(gè)App.cs
文件
完成之后項(xiàng)目的結(jié)構(gòu) :
因?yàn)橐?strong>
App
類之前執(zhí)行一些代碼, 所以不能使用App.xaml
文件
然后添加引用Microsoft.VisualBasic
然后開(kāi)始編寫代碼
需要的using
指令組 :
由于
Microsoft.VisualBasic.ApplicationServices
和System.Windows
這兩個(gè)命名空間都定義了我們即將使用的StartupEventArgs
類型, 所以分別對(duì)這兩個(gè)命名空間設(shè)置一個(gè)別名
首先編寫
App
類, 并設(shè)置啟動(dòng)時(shí)的窗口然后創(chuàng)建一個(gè)繼承自WindowsFormsApplicationBase
的類
在
OnStartup()
方法中創(chuàng)建App
類, 并調(diào)用Run()
方法
在OnStartupNextInstance()
方法中, 激活一個(gè)窗口, 提示用戶, 程序已經(jīng)在運(yùn)行了
最后手動(dòng)編寫Main()
方法, 創(chuàng)建一個(gè)SingleInstanceApp
對(duì)象并調(diào)用Run()
方法
---END---