.net4.0中wpf単例起動
1591 ワード
Microsoftを追加VisualBasicリファレンス、ヘッダリファレンス
using Microsoft.VisualBasic.ApplicationServices;
Appを開きます.xaml.csファイル、ファイルを次のように変更します.
コンパイルすると、vsは2つのエントリ関数を通知し、Appにナビゲートします.g.csのmain関数、直接削除すればいい~~以上のコードは通用して、何も修正する必要はありません..もちろん、自分の個性的なニーズを書き込むには自分で変えます~~
using Microsoft.VisualBasic.ApplicationServices;
Appを開きます.xaml.csファイル、ファイルを次のように変更します.
class Program
{
[STAThread]
static void Main(string[] args)
{
SingleInstanceApp a = new SingleInstanceApp();
a.Run(args);
}
}
/// <summary>
/// App.xaml
/// </summary>
public partial class App : System.Windows.Application
{
protected override void OnStartup(System.Windows.StartupEventArgs e)
{
base.OnStartup(e);
InitializeComponent();
}
}
public class SingleInstanceApp : WindowsFormsApplicationBase
{
App win = null;
public SingleInstanceApp()
{
this.IsSingleInstance = true;
}
protected override bool OnStartup(Microsoft.VisualBasic.ApplicationServices.StartupEventArgs eventArgs)
{
win = new App();
win.Run();
return false;
}
protected override void OnStartupNextInstance(StartupNextInstanceEventArgs eventArgs)
{
foreach (System.Windows.Window _win in win.Windows)
{
if (_win.Visibility == System.Windows.Visibility.Visible)
{
_win.Activate();
}
}
}
}
コンパイルすると、vsは2つのエントリ関数を通知し、Appにナビゲートします.g.csのmain関数、直接削除すればいい~~以上のコードは通用して、何も修正する必要はありません..もちろん、自分の個性的なニーズを書き込むには自分で変えます~~