首页 > 其他分享 >wpf 使用 Generic Host

wpf 使用 Generic Host

时间:2022-09-28 17:58:23浏览次数:46  
标签:OnExit Generic Host host override wpf

wpf 使用Generic Host

public partial class App : Application
{
    private IHost _host;

    public App()
    {
        _host = new HostBuilder()
            .ConfigureAppConfiguration(
                (context, configurationBuilder) =>
                {
                    configurationBuilder.SetBasePath(
                        context.HostingEnvironment.ContentRootPath
                    );
                    // 下一步可以添加配置文件
                }
            )
            .ConfigureServices(services => services.AddSingleton<MainWindow>())
            .ConfigureLogging(logger => logger.AddDebug())
            .Build();
    }

    protected async override void OnStartup(StartupEventArgs e)
    {
        base.OnStartup(e);
        await _host.StartAsync();

        var mainWindow = _host.Services.GetRequiredService<MainWindow>();
        mainWindow.Show();
        return;
    }

    protected async override void OnExit(ExitEventArgs e)
    {
        base.OnExit(e);
        await _host.StopAsync();
        return;
    }
}

window 和 page 等 能否 构造函数完成依赖注入还未尝试

标签:OnExit,Generic,Host,host,override,wpf
From: https://www.cnblogs.com/1w1f/p/16739027.html

相关文章

  • VMWare Workstation安装Ghost版系统
    新建虚拟机的教程可以参考安装纯净版系统的教程,这里不再赘述,下面主要看下与安装纯净版系统的不同之处。如果我们直接启动,会报错networkbootfromamd79c978a,如下图 ......
  • WPF 自定义可拖动标题栏
    要注意,拖拽的地方,需要加背景色,否则DrageMove 将无效MainWindows.xaml<Windowx:Class="Report.MainWindow"xmlns="http://schemas.microsoft.com......
  • ansible 修改/etc/hosts
    1、编辑文件hosts.tmlvim hosts.tml【----hosts: 192.168.59.103 remote_user:root tasks:  -name:addhosts   lineinfile:name=/etc/hostslin......
  • WPF 由于系统颜色配置 Mscms 组件损坏启动失败
    本文记录WPF应用程序,因为系统的颜色配置Mscms.dll组件损坏导致应用加载图片失败,从而启动失败的原因和解决方法在WPF应用加载图片时,将会调用到系统的Mscms.dll组件......
  • 在 WPF 中实现融合效果
    1.融合效果融合效果是指对两个接近的元素进行高斯模糊后再提高对比度,使它们看上去“粘”在一起。在之前的一篇文章中,我使用Win2D实现了融合效果,效果如下:不过Win2D......
  • WPF学习 - 动画基础
    1.WPF中的动画(Animation),是一种属性动画。技术上来说,它是让属性从一个值,变化到另一个值的过程。因此,有两条条重要的特性:1.1只能为依赖属性应用动画 1.2动画只......
  • 关于WPF自定义控件OnApplyTemplate不执行,手动调用Template.FindName返回空的问题
    我在wpf项目中手写了一个自定义控件,运行得相当的正常,后续调用时,反复遇到问题,前前后后折腾了好几次代码publicExtendCombox(){Loaded+=(e......
  • WPF程序如何获取命令行参数
    应用程序以Main方法为入口点,如果为Main方法指定一个string[]类型的参数,在程序运行时,这个参数会获取到传递给应用程序的命令行参数。而 WPF 应用程序比较特殊,因为......
  • _IceTransSocketUNIXConnect: Cannot connect to non-local host
    ubuntu20.04vim关闭时候出现_IceTransSocketUNIXConnect:Cannotconnecttonon-localhost报错百度了一下,说主机名和域名对不上了,想起来之前改过主机名,没有重启查......
  • WPF获取系统dpi
    WPF获取系统dpivardpiX=(int)typeof(SystemParameters).GetProperty("DpiX",BindingFlags.NonPublic|BindingFlags.Static).GetValue(null,null);vardpiY=(int......