zoukankan      html  css  js  c++  java
  • wpf单实例运行

           默认情况下我们可以打开一个应用程序多个实例,例如你双击一个exe多次。当然有些时候这么做会带来很多好处,但是有时我们又不希望这么做,要避免这个问题其实很简单,同WinForm中单实例运行一个应用是一样的,我们只需要在应用程序启动时创建一个"排他锁",修改App.xaml.cs如下:

    1. using System;  
    2. using System.Windows;  
    3. using System.Threading;  
    4.   
    5. namespace WPFLifeCycle  
    6. {  
    7.     /// <summary>  
    8.     /// Interaction logic for App.xaml  
    9.     /// </summary>  
    10.     public partial class App : Application  
    11.     {  
    12.         Mutex mutex=null;  
    13.         protected override void OnStartup(StartupEventArgs e)  
    14.         {  
    15.             base.OnStartup(e);  
    16.             bool createdNew = false;  
    17.             mutex = new Mutex(true"WPFLifeCycle",out createdNew);  
    18.             if (!createdNew)  
    19.             {  
    20.                 MessageBox.Show("程序已启动!""系统提示", MessageBoxButton.OK, MessageBoxImage.Warning);  
    21.                 this.Shutdown();  
    22.             }  
    23.         }  
    24.     }  

    参考WPF系列之应用程序生命周期

  • 相关阅读:
    0430
    hlg1306再遇攻击--射线法判断点是否在多边形内部
    hlg1429凸多边形 二分+叉积
    计算几何
    像个孩子一样
    i am so happy
    hdu3371Connect the Cities---最小生成树kruskal
    hlg1339Touring DIJ+堆优化
    hdu3790最短路问题
    Lucky Goddess
  • 原文地址:https://www.cnblogs.com/moonlight-zjb/p/3695403.html
Copyright © 2011-2022 走看看