【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)


WPF 更改StartupUri方式

【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)

StartupUri指定WPF应用程序启动窗口,默认为MainWindow窗口。

修改方式:
(1)直接修改StartupUri属性,例如:
StartupUri=”TestWindow.xam“” 在login项目的根目录下
StartupUri=”Views/LoginView.xaml”  在子文件夹下

【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)

 

 

(2)删掉StartupUri属性,添加Startup事件,例如:Startup=”Application_Startup”,此事件在对应的隐藏文件中处理(App.xaml.cs)

【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)

        private void Application_Startup(object sender, StartupEventArgs e)
        {
            //Application.Current.StartupUri = new Uri("TestWindow.xaml", UriKind.Relative);//和MainWindwo同一目录
            Application.Current.StartupUri = new Uri("com/view/TestWindow.xaml",UriKind.Relative);//在com/view目录下
        }

(3)MvvM模式中登入成功后关闭登入窗口,删掉StartupUri属性,添加Startup事件,此事件在对应的隐藏文件中处理(App.xaml.cs)

【WPF】更改WPF桌面应用程序的 启动窗口(StartupUri或Startup)

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;
using Login.Views;

namespace Login
{
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : Application
    {
        protected   void Application_Startup(object sender, StartupEventArgs e)
        {
            var _loginview = new LoginView();//LoginView登入窗口
            _loginview.Show();
            _loginview.IsVisibleChanged += (se, es) =>{
                if (_loginview.Visibility == Visibility.Collapsed && _loginview.IsLoaded)
                {
                    var modeview = new ModeWindowView(); //ModeWindowView主窗口
                    modeview.Show();
                    _loginview.Close();
                }
            };
        }
    }
}

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/288092.html

(0)
上一篇 2022年9月7日
下一篇 2022年9月7日

相关推荐

发表回复

登录后才能评论