从计时器中杀死WPF应用程序

时间:2013-06-27 15:26:38

标签: c# wpf multithreading

我有一个运行的System.Threading.Timer来检查会话是否有效。如果确定WPF应用程序的会话已经结束,那么我想关闭该应用程序。

在尝试Application.Current.Shutdown()或其他一些类似的变体时,我会遇到异常,因为它显然是试图从不拥有它的线程结束应用程序。我不确定处理此问题的最佳方法,并寻找任何类似的实现或想法。

1 个答案:

答案 0 :(得分:4)

尝试这样做:

Application.Current.Dispatcher.Invoke(new Action(() => Application.Current.Shutdown()));