WPF, XAML

1.2 WPF 프로그램 작동 원리 PART01

오라클왕 0 1,169 04.11 11:44

 

1.2 HelloWorld XAML기반 WPF 프로그램 작동 원리 

 

n  WPF 프로젝트를 생성하면 App.xaml, MainWindow.xaml 두개의 xaml 파일이 생성되는데 App.xamlApp 라는 클래스로 메인메소드(Main)를 가지면서 자동생성되고 이 메인에서 MainWindowStartupUri로 지정해서 MainWindow가 처음 시작된다.


n  App.xaml이 엔트리 포인트이며 앞에서 작성한 HelloWorld 프로젝트에서 App.g.cs 파일로 변환되어 생성된다. (App.g.i.cs 파일도 생성되는데 임시 파일로 보면 된다.)


n  [App.g.cs]

#pragma checksum "..\..\App.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "72192FBCE1E41E0B66442FD984320E84"

//------------------------------------------------------------------------------

// <auto-generated>

//     이 코드는 도구를 사용하여 생성되었습니다.

//     런타임 버전:4.0.30319.42000

//

//     파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면

//     이러한 변경 내용이 손실됩니다.

// </auto-generated>

//------------------------------------------------------------------------------

 

using System;

using System.Diagnostics;

using System.Windows;

using System.Windows.Automation;

using System.Windows.Controls;

using System.Windows.Controls.Primitives;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Ink;

using System.Windows.Input;

using System.Windows.Markup;

using System.Windows.Media;

using System.Windows.Media.Animation;

using System.Windows.Media.Effects;

using System.Windows.Media.Imaging;

using System.Windows.Media.Media3D;

using System.Windows.Media.TextFormatting;

using System.Windows.Navigation;

using System.Windows.Shapes;

using System.Windows.Shell;

using WpfApp2;

 

 

namespace WpfApp2 {

   

   

    /// <summary>

    /// App

    /// </summary>

    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 5 "..\..\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() {

            WpfApp2.App app = new WpfApp2.App();

            app.InitializeComponent();

            app.Run();

        }

    }

}


 

Comments