본문 바로가기

layout

(5)
Layout Panel #5 (WrapPanel) WrapPanel은 System.Windows.Controls 어셈블리를 참조 추가하고, 네임스페이스를 참조하기 위한 접두사를 사용하여 쓸 수 있다. (참고 : 2009/06/12 - [Control/Layout Panel] - Layout Panel #4 (DockPanel)) WrapPanel StackPanel과 같이 추가 되는 콘텐트 엘리먼트의 순서에 따라 차곡차곡 배치하는 Layout Panel. WrapPanel과 StackPanel WrapPanel 에 콘텐트 엘리먼트를 추가하면, 추가 된 순서대로 배치 되며, 배치 방향은 Default로 Horizontal이 된다. StackPanel도 WrapPanel과 같은 Horizontal로 배치 해 보면, 다음과 같이, 배치 된다. StackPan..
Layout Panel #4 (DockPanel) DockPanel을 사용하려면, System.Windows.Control 어셈블리 내 컨트롤을 사용하기 위해서는 우선 참조를 추가하고, XAML 상단에 네임스페이스를 참조하기 위한 접두사를 사용해야 한다. xmlns:controls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls" DockPanel DockPanel 은 Docking 될 위치를 설정하여, 설정 된 위치에 고정시켜 배치 하는 Layout Panel이다. Docking 될 위치를 지정하는 방법은, 콘텐트 엘리먼트에서 DockPanel의 Attached-Property인 Dock를 사용하면 되고, Dock은 Left, Right, Top, Bottom 네 가지가 ..
Layout Panel #3 (StackPanel) StackPanel : 콘텐트 엘리먼트들을 Stack처럼 순서대로 차곡차곡 쌓아 배치하는 Layout Panel. (Stack처럼 배치 되긴 하나, Data structure의 Stack 구조처럼 LIFO(Last In First Out)로 콘텐트 엘리먼트를 삭제하는 것은 아니다. 다른 Layout Panel과 마찬가지로, Children property(UIElementCollection)에 보관하며, RemoveAt으로 임의의 콘텐트를 삭제할 수도 있다.) StackPanel 에 콘텐트 엘리먼트를 추가하면, 순서대로 배치 되며, 배치 방향은 Default로 Vertical이 된다. 콘텐트 엘리먼트의 배치를 가로 방향으로 하고 싶다면, Orientation property를 Horizontal로 하면 ..
Layout Panel #2 (Grid) Grid : 테이블 형식으로 콘텐트를 구성하여 배치 할 수 있도록 하는 Layout Panel. 테이블 형식의 콘텐트를 구성하기 위한 Grid 설정하기 Grid에는 RowDefinitions와 ColumnDefinitions 두 가지 컬렉션 property가 있다. 두 property는 각각 행과 열을 관리하는 컬렉션이다. 원하는 행,열 만큼 각각의 컬렉션에 RowDefisnition과 ColumnDefinition을 추가하여 설정한다. 예를 들어, 3x3 (행,열)의 테이블 형식으로 Grid 를 구성하려 한다면, 위와 같이 RowDefinitions에 RowDefinition을 3개, ColumnDefinitions에 ColumnDefinition을 3개씩 추가하면 된다. 물론, XMAL 뿐 아니라 런..
Layout Panel #1 (Canvas) Layout Panel : 콘텐트를 배치하기 위해 사용되는 엘리먼트 Layout Panel 내 추가 할 콘텐트 엘리먼트들은 UIElement 형식으로 파생된 엘리먼트이어야만 한다. 왜냐하면, Layout Panel들은 System.Windows.Controls.Panel을 상속 받고 있으며, 추가 할 콘텐트 엘리먼트들은 UIElementCollection형의 Children property에 추가 되기 때문이다. 따라서, UIElement형의 모든 콘텐트 엘리먼트들은 Layout Panel 내 추가 할 수 있다. Canvas Canvas 는 ElementPoint를 사용하여 엘리먼트들을 원하는 위치에 배치 할 수 있는 기능을 제공하는 Layout Panel이다. Canvas에 콘텐트 엘리먼트를 추가 하는..