博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.net4.0中wpf单例启动
阅读量:5080 次
发布时间:2019-06-12

本文共 1426 字,大约阅读时间需要 4 分钟。

添加Microsoft.VisualBasic引用,头引用

using Microsoft.VisualBasic.ApplicationServices;

打开App.xaml.cs文件,将文件修改为如下

class Program    {        [STAThread]        static void Main(string[] args)        {            SingleInstanceApp a = new SingleInstanceApp();            a.Run(args);        }    }     ///     /// App.xaml 的交互逻辑    ///     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函数,直接删除掉就可以了~~以上代码通用,无需修改任何东西..当然,要写入自己的个性需求则自己改~~

转载于:https://www.cnblogs.com/happyyftk/p/3430699.html

你可能感兴趣的文章
用JS制作博客页面背景随滚动渐变的效果
查看>>
JavaScript的迭代函数与迭代函数的实现
查看>>
一步步教你学会browserify
查看>>
Jmeter入门实例
查看>>
亲近用户—回归本质
查看>>
中文脏话识别的解决方案
查看>>
CSS之不常用但重要的样式总结
查看>>
Python编译错误总结
查看>>
URL编码与解码
查看>>
日常开发时遇到的一些坑(三)
查看>>
Eclipse 安装SVN插件
查看>>
深度学习
查看>>
TCP粘包问题及解决方案
查看>>
构建之法阅读笔记02
查看>>
添加按钮
查看>>
移动端页面开发适配 rem布局原理
查看>>
Ajax中文乱码问题解决方法(服务器端用servlet)
查看>>
会计电算化常考题目一
查看>>
阿里云服务器CentOS6.9安装Mysql
查看>>
剑指offer系列6:数值的整数次方
查看>>