클래스를 상속받아 윈도우 응용 프로그램 구현하기

보통 Application 클래스를 상속받아 윈도우 응용프로그램을 만들 수도 있지만 Window 클래스를 상속받아 윈도우 응용프로그램을 만드는 것도 가능합니다.

 Window 클래스를 상속받아 하나의 파일에서 정의하는 것이 조금 더 일반적이며 더 쉬운 방법이라고 할 수 있습니다.

using System;
using System.Windows;
using System.Windows.Input;
 
namespace Chapter1
{
    class InheritTheWin : Window
    {
        [STAThread]
        public static void Main()
        {
            Application app = new Application();
            app.Run(new InheritTheWin());
        }
 
        public InheritTheWin()
        {
            Title = "Inherit the Win";
        }
    }
}

Main 함수에서 Application 클래스를 인스턴스 하고 Window 클래스를 상속받은 InheritTheWin 클래스를 새로 생성합니다.

Application app = new Application();
app.Run(new InheritTheWin());

위 구문을 더 간단히 할 수 있는 방법이 있습니다. 구문은 다음과 같습니다. Main 함수안에 위의 코드를 주석처리 하고 아래코드를 삽입하면 됩니다.

new Application().Run(new InheritTheWin());

new 키워드를 이용하여 Application 객체를 생성하고 Application 클래스에 들어 있는 Run 메소드 안에 Window 클래스를 상속받은 InheritTheWin 클래스를 생성하여 윈도우를 오픈합니다.

기존에 Application 클래스를 상속 받아서 처리할때보다 코드가 아주 쉽고 간편합니다.

참고서적 : 찰스 페졸트의 WPF