wpf 單列表 WPF 應用程式單例模式

2021-10-13 04:16:14 字數 1494 閱讀 2839

wpf程式如何只允許開啟乙個視窗,當視窗存在時,啟用視窗。

步驟:2、新增引用 system.runtime.remoting

如下:[stathread]

public static void main()

if (singleinstance.initializeasfirstinstance(unique))

// allow single instance code to perform cleanup operations

singleinstance.cleanup();

public bool signalexternalcommandlineargs(ilist args)

// handle command line arguments of second instance

return true;

#endregion

到6這一步就可以實現單例了。沒有demo,自己敲一敲,複製貼上試一下吧。~~~~

------由於自己要做視窗傳參的需求,下面是自己遇到的問題記錄一下--------

7、如果開啟視窗時需要傳參,那麼開啟視窗的操作就需要在**中實現,如下:

// todo: make this unique!"change this to something that uniquely identifies your program.";

[stathread]

static void main(string args)

//if (singleinstance.initializeasfirstinstance(unique))

// // allow single instance code to perform cleanup operations

// singleinstance.cleanup();

//if (args.length != 6) return;

var win = new mainwindow();

var vm = new mainwindowviewmodel(args, win.close);

win.datacontext = vm;

// allow single instance code to perform cleanup operations

singleinstance.cleanup();

public bool signalexternalcommandlineargs(ilist args)

// handle command line arguments of second instance

if (this.mainwindow.windowstate == windowstate.minimized)

this.mainwindow.windowstate = windowstate.normal;

this.mainwindow.activate();

return true;

#endregion

wpf 單列表 使用 WPF 建立單例項應用程式

乙個簡單的例子就是大家在使用很多應用程式,例如在使用microsoft word 時會遇到一種情況,不管你開啟多少個文件,系統一次只能載入乙個winword.exe 例項。當開啟新文件時,文件在新視窗顯示,但是始終只有乙個應用程式控制所有文件視窗 如 可以提供平鋪當前所有文件中相鄰視窗的文件的特性。...

WPF 單例項應用程式

例如 microsoft word,不管開啟多少個文件 也不管它們是如何開啟的 一次只能載入 winword.exe 乙個例項。這便是單例項應用程式。但是最簡單的實現方法,並且也是wpf團隊當前推薦的方法是,使用windows窗體提供的內建支援,這一內建支援最初是用於 visual basic 應用...

WPF 之 WPF應用程式事件

x class xmlns xmlns x startupuri wpfwindowdeal.xaml startup namespace myfirstwpf mainwindow為窗體檔案 常用的窗體事件 1 show 顯示非模態視窗 2 showdialog 顯示模態視窗 3 close 關閉...