반응형

Window

  • Window의 기본 용도는 데이터를 시각화하는 contents를 호스트하고 사용자가 데이터와 상호작용 할 수 있도록 하기 위함.
  • WPF 윈도우는 XAML (.xaml) 파일과 CodeBehind (.cs) 파일로 구성되어 있음
  • XAML 파일에서 <Window>는 가장 기본적인 뼈대가 되는 요소로 기본적인 경계선, 타이틀 바, 최대화 및 최소화, 닫기 버튼 등을 제공.

가장 기본적인 Window의  구성 요소

Window의 기본 속성 
전체 속성 : Window Properties

WindowStartupLocation

윈도우 팝업되는 위치를 설정하는 Property
Value: CenterScreen / CenterOwner / Manual

Height / Width (Min, Max) 윈도우의 기본크기를 설정하는 Property,
MinHeight /MinWidth로 최소크기를 고정할 수 있고, MaxHeight / MaxWidth로 최대크기를 고정할 수 있다.
Value: Auto / Number
ActualHeight / ActualWidth Load했을때 실제 Build되는 크기를 설정하는 Property
d:DesignHeight / d:DesignWidth visual studio에서 xaml preview로 볼 때의 window 크기를 설정하는 property
(단, mc:Ignorable="d"가 포함되어 있을 경우에만 적용가능)
SizeToContent 창이 Load될때 창의 크기가 콘텐츠에 맞도록 자동으로 조정되는 방식을 지정하는 Property
Value: Manual / Height / Width / WidthAndHeight
AllowsTransparency 투명도를 적용 여부를 설정하는 property
Value: True / False
Topmost True로 설정되어 있으면 모든 창보다 가장 위에 표시되도록 하는 Property
Value: True / False
ResizeMode 창의 크기 설정의 조절 여부를 설정하는 Property
Value: CanResize / NoResize / CanMinimize / CanResizeWithGrip
WindowStyle 창의 기본적인 스타일을 설정하는 Property
Value: None / SingleBorderWindow / ThreeDBorderWindow / ToolWindow 
WinsdowState 창의 기본적인 상태를 설정하는 Property
Value: Normal / Maximized / Minimized

 

UserControl

  • 일종의 부품같이 모듈의 개념으로 Frame Class(Window, UserControl 등)의 contents로써의 역할을 함
  • UserControl은 재사용이 가능하기때문에 공통된 컨텐츠를 여러 Frame에서 사용하는 경우에 Code의 중복을 줄일 수 있음. 주로 XAML 코드를 대량으로 가지고 있을 때 UserControl을 생성함
  • 기본적인 속성은  Window와 거의 동일 (더 자세한 내용 - UserControl Properties)

Resource Dictionary

  • 각 UI Frame, Control에 Style이 공통되게 적용하기 위해 별도로 구성하여 Resource Dictionary를 각 Frame에서 참조는 구조로 활용됨.

Page

  • Page는 Window 안에 있는Page로 웹 기반 시스템에 주로 사용되며, 단일 브라우저 창이 있고 다른 페이지를 해당 창에서 호스팅할 수 있음
  • 기본적인 속성은  Window와 거의 동일(더 자세한 내용- Page properties)
반응형

'[====== Development ======] > C#' 카테고리의 다른 글

WPF(XAML) - Shape Class  (0) 2021.01.15
WPF(XAML) - Layout Class  (0) 2021.01.15
Setup Project (msi 설치파일 만들기)  (0) 2021.01.15
Xaml (WPF)  (0) 2021.01.12
WPF Code Behind에서 Grid 의 Column Size 변경 방법  (0) 2021.01.12

+ Recent posts