1. 초기 설정
C# WPF Application 으로 프로젝트를 생성하고,
솔루션 탐색기에서 폴더구조를 MVVM 디자인 패턴을 사용하기 위해서
[Models] [ViewModels] [Views] 로 구분을 하였다.
[Models] : 데이터
[ViewModels] : 실제 View폴더 내의 Xaml 파일에 적힌 Binding에 코드 수행 결과를 뿌려주는 역할을 담당한다.
[Views] : MainWindow.xaml이라는 디자인을 하는 코드 입력하는 곳과 그 내부에는
MainWindow.xaml.cs 파일이 존재한다.
<Window x:Class="Calc241101week.Views.MainView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Calc241101week.Views"
mc:Ignorable="d"
Title="계산기" Height="600" Width="500"
WindowStartupLocation="CenterScreen" AllowsTransparency="True"
Background="{x:Null}" WindowStyle="None"
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
>
<!-- 내부에 Grid와 Window.Resource 등이 추가될 예정 -->
</Window>
이 XAML 코드 조각은 WPF(Windows Presentation Foundation) 애플리케이션의 메인 윈도우를 정의하는 부분입니다. 각 속성과 요소에 대한 설명은 다음과 같습니다:
x:Class:
이 속성은 XAML 파일이 연결된 C# 클래스의 이름을 지정합니다. 여기서는 Calc241101week.Views.MainView라는 네임스페이스와 클래스 이름을 사용하고 있습니다.
xmlns:
XML 네임스페이스를 정의합니다. WPF에서 사용하는 기본 네임스페이스로, XAML 요소를 정의하는 데 필요합니다.
http://schemas.microsoft.com/winfx/2006/xaml/presentation는 WPF의 프레젠테이션 요소를 포함합니다.
xmlns:x:
XAML의 확장 기능을 제공하는 네임스페이스입니다. 여기서는 XAML의 기본 기능을 사용할 수 있게 해줍니다.
xmlns:d:
디자인 타임에 사용되는 네임스페이스로, Blend와 같은 도구에서 디자인 시 미리 보기 기능을 지원합니다.
xmlns:mc:
마크업 호환성 네임스페이스로, XAML의 호환성을 관리하는 데 사용됩니다. 주로 디자인 타임에 무시할 수 있는 요소를 정의하는 데 사용됩니다.
xmlns:local:
애플리케이션의 로컬 네임스페이스를 정의합니다. 여기서는 Calc241101week.Views 네임스페이스를 참조하고 있습니다.
mc:Ignorable:
이 속성은 지정된 네임스페이스의 요소가 무시될 수 있음을 나타냅니다. 여기서는 d 네임스페이스가 무시될 수 있음을 나타냅니다.
Title:
윈도우의 제목을 설정합니다. 여기서는 "계산기"라는 제목이 설정되어 있습니다.
Height 및 Width:
윈도우의 높이와 너비를 설정합니다. 여기서는 높이 600 픽셀, 너비 500 픽셀로 설정되어 있습니다.
WindowStartupLocation:
윈도우가 시작될 위치를 설정합니다. CenterScreen으로 설정되어 있어, 화면의 중앙에 위치하게 됩니다.
AllowsTransparency:
윈도우의 투명도를 허용할지를 설정합니다. True로 설정되어 있어, 투명한 배경을 사용할 수 있습니다.
Background:
윈도우의 배경 색상을 설정합니다. {x:Null}로 설정되어 있어, 배경이 투명하게 됩니다.
WindowStyle:
윈도우의 스타일을 설정합니다. None으로 설정되어 있어, 기본 윈도우 테두리와 제목 표시줄이 없습니다.
xmlns:i:
XAML 동작을 위한 네임스페이스입니다. WPF에서 동작을 추가하는 데 사용됩니다.
이러한 속성들은 WPF 애플리케이션의 사용자 인터페이스를 구성하는 데 중요한 역할을 합니다.