原來的C#程序都有Main的,如今用vs新建一個Wpf項目,啓動彷佛變成App.xmal,前期項目中爲了獲取啓動參數,非常折騰了一番:數組
1.先是修改App.xaml,添加StartUp事件app
<Application x:Class="YKMain.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:YKMain" Startup="Application_Startup">
2.而後編輯Application_Startup,判斷e.Args數組async
private async void Application_Startup(object sender, StartupEventArgs e) { }
總感受跟又臭又長的裹腳布同樣,不爽。學習後,找回了傳說中的Main,莫有App.Xaml,直截了當。學習
using System; using System.Windows; namespace L1_NoXaml { public class Program : Application { [STAThread] static void Main(string[] args) { Program app = new Program(); app.MainWindow = new Window1(); app.MainWindow.ShowDialog(); } } }
PS:2020/3/3完善了一下spa
using System; using System.Windows; namespace YKMainCore { public class Program : Application { [STAThread] static void Main(string[] args) { SplashScreen splashScreen = new SplashScreen("id.png"); splashScreen.Show(true); MainWindow window = new MainWindow() { WindowStyle = WindowStyle.None, ResizeMode = ResizeMode.NoResize, WindowState = WindowState.Normal, ShowInTaskbar = false, Background = System.Windows.Media.Brushes.Transparent, AllowsTransparency = true, Left = 0, Top = 0, Width = SystemParameters.PrimaryScreenWidth, Height = SystemParameters.PrimaryScreenHeight }; Program app = new Program(); app.Run(window); } } }