首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Application.Current.Shutdown(-1)没有关闭WPF应用程序

这个问答内容涉及到了两个方面:WPF应用程序的关闭和C#编程语言。

首先,关于WPF应用程序的关闭,可以使用以下方法:

  1. Application.Current.Shutdown():这个方法可以关闭WPF应用程序。其中,参数为0表示正常关闭,非0值表示异常关闭。
  2. Environment.Exit():这个方法可以立即关闭应用程序,并返回给定的退出代码。
  3. System.Windows.Application.Current.MainWindow.Close():这个方法可以关闭当前应用程序的主窗口。

其中,Application.Current.Shutdown(-1)表示非正常关闭应用程序。

其次,关于C#编程语言,可以使用以下方法:

  1. Application.Current.Shutdown():这个方法可以关闭WPF应用程序。其中,参数为0表示正常关闭,非0值表示异常关闭。
  2. Environment.Exit():这个方法可以立即关闭应用程序,并返回给定的退出代码。
  3. System.Windows.Application.Current.MainWindow.Close():这个方法可以关闭当前应用程序的主窗口。

综上所述,Application.Current.Shutdown(-1)可以关闭WPF应用程序,并表示非正常关闭应用程序。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Prism For WPF Login对话框又简单又合理的方案之一

    首先感谢站长和各位WPF大佬对我的指导,我学到了很多,还是关于利用Prism做Login对话框的事情,看到站长发过一篇《WPF Prism框架Region失效了?》...这个类里重载protected override void OnInitialized()这个方法,然后login.ShowDialog()的逻辑写在里面就ok了,具体看以下代码: namespace Wpf1...if (loginResult.Value) base.OnInitialized(); else Application.Current.Shutdown...(); } } } 然后再Login.xaml.cs里的“登录”和“退出”按钮的Click事件里这么写 private void Btn1_Click(object sender...不过这也有一点要注意:此时Prism的Region好像还没有生效,利用Prism的视图注入或者视图发现这两个办法给Login添加视图应该不行,还好一般的Login也不是特别复杂,在Login.xaml正常写写就行

    49710

    dotnet 调试应用启动闪退的方法

    当然,没有符号的话,也没多少问题,至少可以快速定位到是哪个模块 使用 VisualStudio 定位应用软件启动失败的方法是让 VisualStudio 启动应用且进入调试模式。...但是当前是在调试启动失败,启动失败可能是库的锅,需要调试发布的程序集,推荐关闭仅我的代码调试。...或者是 Main 函数执行完成,例如在 WPF 里面调用了 Application.Current.Shutdown 进行退出 在开发环境上遇到应用启动失败,大部分时候都可以在 VisualStudio...我之前很经常遇到的就是 WPF 应用启动失败是由显卡驱动导致的,不过显卡驱动问题基本上用不到多少的调试,稍微看一下就能看到了,系统的各个部分都会很奇怪 如何打开系统的事件查看器?...ID: 这两条日志没有能给咱很好的一个调试思路,只能说明应用确实挂了而已。

    1.8K10

    WPF的消息机制(三)- WPF内部的5个窗口之处理激活和关闭的消息窗口以及系统资源通知窗口

    目录 WPF的消息机制(一)-让应用程序动起来 WPF的消息机制(二)-WPF内部的5个窗口 (1)隐藏消息窗口 (2)处理激活和关闭的消息窗口以及系统资源通知窗口 (3)用于用户交互的可见窗口 (4)...用于UI窗口绘制的可见窗口 WPF的消息机制(三)-WPF输入事件的来源 WPF的消息机制(四)-WPF中UI的更新 处理应用程序激活和系统关闭的窗口(Window 2#) 创建时机:在调用Application.Run...WPF为了安全起见没有让UI窗口来处理应用程序激活,反激活,以及操作系统关闭时对应的消息,而是内部创建了一个隐藏的窗口,专门用来接收WM_ACTIVATEAPP和WM_QUERYENDSESSION两个...跟Window2#的初衷类似,为了安全起见,没有通过可见的UI窗口来处理这些消息,而是内容创建了这个隐藏的Window4#窗口来处理这些消息,确保UI窗口可以安全的更新由于系统Theme及相关资源改变后的表现...也许你会问为什么先讲解了Window4,而没有讲用于用户交互的可见窗口(Window3)?

    1.9K90

    Windows wpf(下载应用介绍教程)

    一、窗体类基本概念     对于WPF应用程序,在Visual Studio和Expression Blend中,自定义的窗体均继承System.Windows.Window类。...用户通过窗口与 Windows Presentation Foundation (WPF) 独立应用程序进行交互。 窗口的主要用途是承载可视化数据并使用户可以与数据进行交互的内容。...独立 WPF 应用程序使用 Window 类来提供它们自己的窗口。在 WPF 中,可以使用代码或 XAML 标记来实现窗口的外观和行为。...关闭窗体 当用户关闭窗口时,窗口的生命便开始走向终结。...image.png WPF窗体的详细的属性、方法、事件请参考MSDN,有很多的属性、方法、事件与Windows应用程序中 System.Windows.Forms.Form类颇为相似。

    1.2K20

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    WPF 或 WinForms 应用程序选择浏览器组件,对于那些搜索基于Chrome的解决方案的人来说, DotNetBrowser[1]和CefSharp[2]是最明显的选择。...初始化和关闭都必须在主应用程序线程(通常是 UI 线程)中执行。在不同的线程中调用它们通常会导致冻结。 此外,每个进程可以执行一次初始化和关闭。这个限制来自 CEF 本身。...但是,在这种情况下,CefSharp 初始化和关闭是隐式执行的,很难确定它是否已经在某个点初始化。 将 DotNetBrowser 嵌入 WPF 窗口的过程需要额外的步骤。...因此,无需让您的应用程序显式识别 DPI 以避免在高 DPI 显示上呈现伪影。 Headless DotNetBrowser 和 CefSharp 都可以在没有 UI 的应用程序中使用。...要在没有 UI 的应用程序中使用 DotNetBrowser,您需要像往常一样执行初始化。在这种情况下,没有需要初始化的 BrowserView。

    54120

    WPF的消息机制(二)- WPF内部的5个窗口之隐藏消息窗口

    目录 WPF的消息机制(一)-让应用程序动起来 WPF的消息机制(二)-WPF内部的5个窗口 (1)隐藏消息窗口 (2)处理激活和关闭的消息的窗口和系统资源通知窗口 (3)用于用户交互的可见窗口 (4)...Dispatcher对象,如果没有就构造一个,在这里,一个线程对应一个Dispatcher。...另外,前面提到的“消息循环”,“消息队列”等都是Win32应用程序的概念,我们知道,提起这些概念,必然会跟Win32的“窗口”,“Handle”,“WndProc”之类的概念离不开,那么WPF里面究竟有没有...我想说的是:有,还不止一个,只不过没有暴露出来,外面不需要关心这些。...通常情况下,一个WPF应用程序在运行起来的时候,后台会创建5个Win32的窗口,帮助WPF系统来处理操作系统以及应用程序内部的消息。

    1.9K50

    WPF的消息机制(一)- 让应用程序动起来

    其实,WPF的底层也是基于Win32的消息系统,那么对于WPF应用程序来说,它是如何跟Win32的消息交互,这里到底存在一个什么样的机制?...接下来我会通过下面几篇博文介绍这个消息机制: WPF的消息机制(一)-让应用程序动起来 WPF的消息机制(二)-WPF内部的5个窗口 (1)隐藏消息窗口 (2)处理激活和关闭的消息的窗口和系统资源通知窗口...(3)用于UI窗口绘制的可见窗口 (4)用于用户交互的可见窗口 WPF的消息机制(三)-WPF输入事件的来源 WPF的消息机制(四)-WPF中UI的更新 让应用程序动起来 谈到WPF的消息,首先应该知道...那么一个Application启动之后,按照以前对Win32的消息机制的理解,当应用程序启动后,必须进入消息循环,对于WPF,也是一样的。那么WPF应用程序是在什么地方进入消息循环呢?...对了,这就是WPF应用程序进入了消息循环。

    1.4K90

    WPF程序在shutdown期间引发的TaskCanceledException

    翻译过来就是 对于某些特定的.NET应用程序(注:目前仅影响WPF),在AppDomain或者进程关闭时,Finalizer线程的计时问题可能会引发异常。...这个问题通常出现在关闭期间,这些应用程序未能够正常关闭工作线程的Dispatcher。因此这些应用需要合理的管理Dispatcher的生命周期。...源代码中针对TimeoutException进行了catch,但是没有处理TaskCanceledException 。而从堆栈信息上看,很可能这次更新将内部实现改为了异步任务。...影响范围 按官方文档解释,目前仅影响4.7.2上运行的部分WPF程序 解决方案 直接方案 这个补丁上线时,提供了一个开关。...Switch.MS.Internal.DoNotInvokeInWeakEventTableShutdownListener=true"/> 该方案能够有助于缓解(alleviate)该问题, 而并不能消除(eliminate) 根本方案 1

    83520

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    WPF 或 WinForms 应用程序选择浏览器组件,对于那些搜索基于Chrome的解决方案的人来说,DotNetBrowser[1]和CefSharp[2]是最明显的选择。...初始化和关闭都必须在主应用程序线程(通常是 UI 线程)中执行。在不同的线程中调用它们通常会导致冻结。 此外,每个进程可以执行一次初始化和关闭。...但是,在这种情况下,CefSharp 初始化和关闭是隐式执行的,很难确定它是否已经在某个点初始化。 将 DotNetBrowser 嵌入 WPF 窗口的过程需要额外的步骤。...因此,无需让您的应用程序显式识别 DPI 以避免在高 DPI 显示上呈现伪影。 无头 DotNetBrowser 和 CefSharp 都可以在没有 UI 的应用程序中使用。...要在没有 UI 的应用程序中使用 DotNetBrowser,您需要像往常一样执行初始化。在这种情况下,没有需要初始化的 BrowserView。

    54440

    【愚公系列】2023年11月 WPF控件专题 Page控件详解

    一、Page控件详解Page是WPF应用程序中的一个控件,用于将应用程序的内容分解为独立的页面。它通常用于实现导航结构,例如在框架或导航窗口中。...1.属性介绍Page控件是WPF中用于实现页面的控件,它拥有以下常用属性:Background:页面的背景色。Title:页面的标题。FontFamily:页面中的字体。...2.常用场景Page控件是WPF中的导航控件,常用于应用程序中的页面切换和导航。以下是Page控件常见的使用场景:应用程序的登录页、欢迎页等静态页面。...应用程序中多个页面之间的导航,例如主菜单、编辑页面、详情页面等。WPF应用程序中使用框架布局时,Page控件可以作为框架布局的子控件。关闭应用程序前的确认页面,例如确认是否保存修改的提示页面。...Page控件可以方便地管理WPF应用程序中的多个页面,并帮助用户快速、方便地导航到所需页面。

    93511

    .NET Core - 解决VS2019中.net core WPF暂时无法使用Designer的临时方法

    以下方法来自于微软github开源项目WPF: dotnet/samples - WPF Hello World sample with linked files,请放心使用。...具体的解决方法是在同一个 Solution下创建两个项目: 用于设计WPF应用程序的.NET Framework应用程序.net Framework 项目) 用于运行WPF应用程序的.NET Core应用程序...(.net core项目) 而两个应用程序(.net core项目和相应.net Framework 项目)都将引用相同的文件,共享一个Assembly Name。...更改 .net core WPF项目 CoreHiWPF 的Assembly Name,使得两个项目一致 右键点击 .net core WPF项目 CoreHiWPF,选择最后的Properties,...试用 XAML Designer 此时关闭所有打开的文件,双击项目HiWPF中的MainWindow.xaml,就可以在XAML Designer中看到空白的WPF window了。 ?

    1.6K20

    WPF实现基础控件之托盘的示例代码分享

    WPF 基础控件之托盘框架使用大于等于.NET40。Visual Studio 2022。项目使用 MIT 开源许可协议。新建NotifyIcon自定义控件继承自FrameworkElement。...以下2点需要注意:托盘控件的ContextMenu菜单MenuItem 在使用binding时无效,是因为DataContext没有带过去,需要重新赋值一次。...= 1)                return false;            if (_hIcon !...NotifyIconExample.cs 代码如下: private void Quit_Click(object sender, RoutedEventArgs e)        {            Application.Current.Shutdown...}ContextContent 使用如下: private void Quit_Click(object sender, RoutedEventArgs e)        {            Application.Current.Shutdown

    72800
    领券