首页 > 编程语言 >【转】[WPF] 关闭模式决定了应用程序何时关闭

【转】[WPF] 关闭模式决定了应用程序何时关闭

时间:2024-10-19 21:10:42浏览次数:9  
标签:ShutdownMode 模式 Application 应用程序 关闭 WPF

在 WPF (Windows Presentation Foundation) 中,关闭模式(Shutdown Mode)决定了应用程序何时关闭。可以通过以下方式设置关闭模式:

XAML 设置: 在 App.xaml 文件中,可以通过 ShutdownMode 属性来设置关闭模式。WPF 提供了三种关闭模式:

  • OnLastWindowClose:默认值,当最后一个窗口关闭时,应用程序关闭。
  • OnMainWindowClose:当主窗口关闭时,应用程序关闭。
  • OnExplicitShutdown:只有在调用 Application.Shutdown 方法时,应用程序才会关闭。

示例代码:

<Application x:Class="YourNamespace.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="MainWindow.xaml"
             ShutdownMode="OnLastWindowClose">
</Application>

代码设置: 也可以在代码中动态设置关闭模式。在 App.xaml.cs 文件中,可以在 OnStartup 方法中设置 ShutdownMode 属性。

示例代码:

public partial class App : Application
{
    protected override void OnStartup(StartupEventArgs e)
    {
        base.OnStartup(e);
        this.ShutdownMode = ShutdownMode.OnLastWindowClose;
    }
}

手动关闭应用程序: 如果使用 OnExplicitShutdown 模式,需要在适当的时候调用 Application.Shutdown 方法来关闭应用程序。

示例代码:

private void SomeMethod()
{
    // 执行一些操作后关闭应用程序
    Application.Current.Shutdown();
}

通过以上方法,可以灵活地控制 WPF 应用程序的关闭行为。

标签:ShutdownMode,模式,Application,应用程序,关闭,WPF
From: https://www.cnblogs.com/z5337/p/18486581

相关文章

  • WPF中Grid、StackPanel、Canvas、WrapPanel常用属性
    Grid常用属性Grid控件在WPF中非常强大,它提供了多种属性来定义行和列的布局。以下是一些常用的Grid属性:RowDefinitions和ColumnDefinitions:Grid 控件使用 RowDefinitions 和 ColumnDefinitions 来定义行和列的集合。每个 RowDefinition 和 ColumnDefinition......
  • 掌握API调用,让你的应用程序与世界互联
    为什么使用API接口?API接口允许开发者访问第三方服务提供的数据和功能,而无需从头开始构建这些功能。这不仅节省了开发时间和成本,还能让应用程序更加丰富和动态。何时使用API接口?当你需要以下功能时,可以考虑使用API接口:获取实时数据,如天气、股市信息或新闻头条。集成社交媒体功......
  • vscode关闭声音
    解决策略寻找顺序左下角齿轮形状-->setting(设置)-->sounds(声音)-->sounds-->off吐槽真的是很煞笔的设计,不知道脑子是糊了浆糊吗?主要有这么几点:莫名其妙的开启(一直以为电脑出问题了)如果只设置音量为0,一旦重新打开又会复原。居然改不了,这个设置有什么意义吗??????就算不是关闭声......
  • 【C#】【WPF】【代码记录】打开文件夹选择、打开文件选择
    【导图】: 实现效果:选择文件夹 打开图片文件选择: 打开图片选择:privatestringopenFileDialog(){OpenFileDialogopenFileDialog=newOpenFileDialog();openFileDialog.Filter="图片|*.jpg;*.png;*.bmp";openFileDialog.DefaultExt=".png";......
  • 【WPF】【C#】【代码记录】构造ComboBox下拉的数据源(字典类型)
    #region下拉privateDictionary<string,T>getComboSource<T>(paramsT[]types)whereT:Enum{varenumValues=types.Length>0?types:(T[])Enum.GetValues(typeof(T));returnenumValues.ToDictionary(o=>getTypeName(o),o=>......
  • Stage模型应用程序包结构
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(MaoistLearning)➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs.com/strengthen/p/......
  • 第36篇 linux服务器上启动framework应用程序流程
    framework开发的应用程序,一般是不会在linux服务器上运行的,但是我们可以通过mono进行应用部署1.查看linux服务上是否已经安装mono-core方式1:rpm命令查看rpm-qa|grepmono-core有结果返回,说明已经安装方式2:使用yumlistinstalledyumlistinstalled|grepmono-core......
  • WPF入门_02依赖属性
    1、依赖属性主要有以下三个优点1)依赖属性加入了属性变化通知、限制、验证等功能。这样可以使我们更方便地实现应用,同时大大减少了代码量2)节约内存:在WinForm中,每个UI控件的属性都赋予了初始值,这样每个相同的控件在内存中都会保存一份初始值。而WPF依赖属性很好地解决了这个问......
  • 使用vs2022将.net8的应用程序发布为一个单独文件
    在使用.NetCore3.1时,可以通过设置以下工程配置文本来将项目发布为一个单独的应用程序文件:<ProjectSdk="Microsoft.NET.Sdk.WindowsDesktop"><PropertyGroup><TargetFramework>netcoreapp3.1</TargetFramework><UseWPF>true</UseWPF> <Publi......
  • 应用程序框架基础
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(MaoistLearning)➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs.com/strengthen/p/......