WPF 제작시 Window 클래스가 기본이며 기본적으로 경계선, 타이틀 바, 최대화 최소화, 닫기 버튼을 제공한다. WPF Window는 XAML(.xaml)과 CodeBehind(.cs)으로 이루어져 있다.
x:class 속성은 XAML 파일에게 어떠한 클래스를 이용할 지 알려주는 역할을 수행한다.
Window 클래스를 상속받는 MainWindow는 런타임에 XAML과 결합하여 전체적인 윈도우를 보여준다. InitializeComponent()를 호출하고 이를 통해 기능을 포함한 전체적인 윈도우가 실행되어 나타난다.
Icon
윈도우의 아이콘을 정의한다.
ResizeMode
유저가 윈도우 크기를 재조정할 수 있는지 결정해준다.
ShowInTaskbar
기본값은 True
False로 수정 시, 당신이 실행시킨 윈도우가 Windows Taskbar에 나타나지 않는다.
중요하지 않은 윈도우거나 트레이에 최소화하는 경우 사용된다.
SizeToContent
Content에 따라 윈도우 크기를 자동으로 재조정할지 결정해준다.
기본값은 Manual로, 자동으로 재조정하지 않는다.
Topmost
기본값은 False
True로 수정 시, 최소화하지 않는 이상 해당 윈도우는 항상 위에 존재한다.
WindowStartupLocation
윈도우 초기 위치에 대한 속성값이다.
기본값은 Manual이다.
Top, Left 속성에 정의한 대로 초기 위치가 결정된다.
WindowState
초기 Window 상태에 대한 컨트롤이다.
기본값은 Normal이며, 시작시, 최대화 혹은 최소화상태가 아닌 상태로 시작한다.
이외에도 다양한 속성들이 존재한다.
기본적으로 Window를 열어보면 아래 사진과 같이뜬다.
아래 사진에서 빨간색 동그라미에 버튼을 클릭하면 GUI를 확인하면서 XAML를 수정할 수 있다.



해당 버튼을 누르면 XAML는 보이지 않고 XAML을 바탕으로 생성된 GUI만 확대해서 보여준다.

개인적으로는 좌우 분할하여 GUI를 확인하며 XAML을 작성하는 것이 편한 것 같다.