실버라이트 레이 아웃 시스템을 이해 하기 위해서는 다음 그림에 대한 이해가 꼭 필요 하다.
위의 그림은 부모 패널의 크기와 자식 요소 및 자식이 들어 있는 레이아웃 슬롯을 보여 준다.
실제로, 자식에 대한 할당 영역은 자식 요소의 크기 보다 훨씬 크다.
각 자식에 대한 레이아웃 슬롯의 크기는 부모 컨테이너가 결정 한다. 부모는 자식이 요청하는 것 보다 공간을 많거나 적게 할당 할 수 있다.
GetLayoutSlot 을 호출 하면 레이아웃 슬롯의 크기를 가져올 수 있다.
기본 패널 Canvas , Grid , StackPanel
Canvas
CanVas는 CanVas 영역에 상대적인 좌표를 사용하여 자식 요소를 명시적으로 배치할 수 있는 영역을 정의
CanVas를 사용하여 절대 위치를 지정할 경우 브라우저 창의 크기가 변할 경우 재배치 되지 않고, 지정된 픽셀 위치에 그대로 유지
다음 조건 중 하나 이상이 충족 될 경우 CanVas는 표시 되지 않는다.
CanVas를 사용하여 절대 위치를 지정할 경우 브라우저 창의 크기가 변할 경우 재배치 되지 않고, 지정된 픽셀 위치에 그대로 유지
다음 조건 중 하나 이상이 충족 될 경우 CanVas는 표시 되지 않는다.
Height / Width 속성 값이 0 인 경우
Background 속성이 null 인 경우
Opacity 속성이 0 인 경우
Visibility 속성이 Collapsed 인 경우
Canvas의 상위 개체 중 하나가 표시되지 않는 경우
Background 속성이 null 인 경우
Opacity 속성이 0 인 경우
Visibility 속성이 Collapsed 인 경우
Canvas의 상위 개체 중 하나가 표시되지 않는 경우
<Canvas 사용 예>
Grid
Grid는 Visual Studio Silverlight 템플릿에 사용되는 루트 요소
Grid는 열과 행으로 구성되는 유연한 표 영역을 정의
브라우저 창의 크기가 변할 경우 재배치
<Grid 사용 예>
StackPanel
StackPanel은 가로 또는 세로 방향의 한 줄에 자식 요소 정의
StackPanel은 브라우저 창의 크기가 변할 경우 재배치
StackPanel의 자식은 기본 적으로 StackPanel의 left / top 에 배치 된다.(확인 필요)
<StackPanel 사용 예>
간단하게 기본적은 실버라이트 레이아웃 시스템을 살표 보았다.
다음 기회에 좀더 세부적인 부분을 포스팅 할 예정 이다.
오늘도 인내심을 자극 하며 열프!
'프로그래밍 > 실버라이트' 카테고리의 다른 글
[실버라이트] WCF(Windows Communication Foundation) (0) | 2010.12.21 |
---|---|
[실버라이트] CLR(Common Language Runtime) - 공용 언어 런타임 (1) | 2010.12.20 |
[실버라이트] Silverlight 개요 정리 (0) | 2010.12.20 |
[실버라이트] 실버라이트 개발 준비!(VS 2010 설치) (0) | 2010.12.15 |
.NET 4.0 설치 오류 - 0x800c0005 (7) | 2010.12.13 |