4.基于Prism框架的登录跳转
在进行桌面应用开发时,从登录窗口跳转到主窗口的操作极为常见的,
在Prism框架下,登录跳转的具体操作可以通过重写InitializeShell方法来实现(这里以PrismApplication启动为例)。
InitializeShell(Window shell):PrismApplication类型的实例方法,在初始化Shell(主窗口)的时候执行。
代码
using DryIoc; using Prism.DryIoc; using Prism.Ioc; using System; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Linq; using System.Threading.Tasks; using System.Windows; namespace _2_PrismApplication启动 { /// <summary> /// App.xaml 的交互逻辑 /// </summary> public partial class App : PrismApplication { protected override Window CreateShell() { //创建主窗口对象 return Container.Resolve<MainWindow>(); } protected override void RegisterTypes(IContainerRegistry containerRegistry) { //这里进行IOC容器管理类型的注册 } // 基于Prism框架的登录跳转 //在进行桌面应用开发时,从登录窗口跳转到主窗口的操作极为常见的,在Prism框架下,登录跳转的具体操作可以通过重写InitializeShell方法来实现(这里以PrismApplication启动为例)。 //InitializeShell(Window shell):PrismApplication类型的实例方法,在初始化Shell(主窗口)的时候执行。 protected override void InitializeShell(Window shell) { //通过IOC容器来创建登录窗口 var login = Container.Resolve<Login>(); if (login == null || login.ShowDialog() == false) { //当登录失败或登录窗口关闭,则直接关闭应用 Application.Current.Shutdown(); } else { base.InitializeShell(shell); } } } }

浙公网安备 33010602011771号