실버라이트 공부하기- 여섯째 시간(실버라이트 컨트롤 -1)


Microsoft/Silverlight 2010.10.28 18:29

















레이아웃 컨트롤

실버라이트 컨트롤 들을 유연하게 배치를 할 수 있도록 다양한 컨트롤을 제공하고 있습니다.

1 캔버스 컨트롤(Canvas)
 캔버스 컨트롤은 컨트롤 내부에 자신 컨트롤들을 가질 수 있으며, 자식 컨트롤들은 부모 캔버스 컨트롤의 왼쪽 상단의 시작점을 기준으로 자신의 위치를 정하는 고정모델을 지원합니다! 캔버스 컨트롤은 자식컨트롤의 그룹을 속성으로 가지는 패널(Panel)로부터 파생되었기 때문에,자식컨트롤들을 가질 수 있습니다.

위와 같이 큰 블루 캔바스가 부모 캔버스, 노란캔버스가 자식캔버스가 되겠습니다.
이런 캔버스를 잘 사용하면 UI구성에 매우 유용할 것 입니다.

2 스택패널(StackPanel) 컨트롤

스택패널 또한 캔버스와 동일하게 패널로부터 파생된 컨트롤 입니다.
똑같이 부모컨트롤과 자식 컨트롤을 가질 수 있습니다.
스택패널은 캔버스와 차이점이라고 하면 캔버스와 같이 좌표처럼 절대적인 위치를 정하지 않고 스태패널에 속한 자식들을 순서대로 수직적, 수평적으로만 표시하게 됩니다.
캔버스처럼 원하는 위치가 아니라 수평적이나 수직적으로 표현하는 경우가 많은데, 이런 경우 사용하게 됩니다.

 Orientation 자식 컨트롤들의 정렬 방향 설정 및 반환 
 Vertical 자식 컨트롤 세로 배열 
 Horizontal 자식 컨트롤 가로 배열

스택패널 세로 정렬 예제

Vertical 자리에 Horizontal을 사용한다면 가로로 배치가 되겠죠?^^

3 그리드 컨트롤 (Grid)

패널 클래스부터 파생된 컨트롤이며, 가장 유연한 레이아웃 컨트롤입니다.
HTML 의 테이블과 흡사하지만 해당셀에 직접 컨트롤을 위치 하진 못하고, 열과 행을 정의할 수 있으며, 열과 행에 포함 될 컨트롤 등은 첨부속성을 통해 (절대 위치) 해당 컨트롤이 위치할 그리드의 열과 행을 지정할 수 있습니다.


여러 행이나 여러 열에 표시하고자 한다면
<Button x:Name="button1" Content="Button1" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" />
아래 예제와 같이,


다음 시간에 "기본 컨트롤" 에 대해 알아볼께요^^
저작자 표시 비영리
신고

WRITTEN BY
ShakeJ

0 ,