木子屋 Dnawo's BLOG

WPF应用程序入口函数(Main函数)小结

👤 dnawo 📅 2015-01-05 👁 9413 👍 0 💬 0 🔄 本站原创
Windows窗体应用程序的入口函数在Program.cs文件中,但WPF应用程序没有这个文件,WPF应用程序入口函数在哪里呢?手工添加一个入口函数,生成项目,出错:

图片

原来WPF应用程序入口函数在obj\Release\App.g.cs文件中:

public partial class App : System.Windows.Application {
        
    /// <summary>
    /// InitializeComponent
    /// </summary>
    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
    public void InitializeComponent() {
            
        #line 4 "..\..\App.xaml"
        this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
            
        #line default
        #line hidden
    }
        
    /// <summary>
    /// Application Entry Point.
    /// </summary>
    [System.STAThreadAttribute()]
    [System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
    public static void Main() {
        WpfApplication1.App app = new WpfApplication1.App();
        app.InitializeComponent();
        app.Run();
    }
}

从代码可知,InitializeComponent方法中的StartupUri用于指定WPF应用程序主窗体,假如需修改主窗体是不是这里改一下就可以了?不行!App.g.cs注释有说明:

//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.18052
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------

WPF应用程序主窗体应在App.xaml文件中修改:

<Application x:Class="WpfApplication1.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             StartupUri="[color=Red]MainWindow.xaml[/color]">
    <Application.Resources>
         
    </Application.Resources>
</Application>

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 Windows7系统hiberfil.sys和pagefile.… 下一篇 → C#事件防止重复注册和移除全部事件示例