Visual Studio 템플릿에는 보기 상태 변경을 처리하는 코드가 포함되어 있습니다. 이 코드는 Project/Common/LayoutAwarePage.cs/vb 파일에 있으며, 앱 상태를 XAML에 정의된 시각적 상태로 매핑합니다. 페이지 레이아웃 논리가 자동으로 제공되므로 각 페이지의 시각적 상태에 사용할 보기만 지정하면 됩니다.
이 그룹에는 4가지 VisualState(FullScreenLandscape
,
Filled
, FullScreenPortrait
, Snapped
)가 있습니다. 같은
VisualStateGroup에 포함된 다른 VisualState를 동시에 사용할 수 없습니다.
<!--App Orientation States-->
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="ApplicationViewStates">
<VisualState x:Name="FullScreenLandscape" />
<VisualState x:Name="Filled"> ... </VisualState>
<VisualState x:Name="FullScreenPortrait"> ... </VisualState>
<VisualState x:Name="Snapped"> ... </VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
- 앱이 가로 방향으로 전체 화면으로 표시되면
FullScreenLandscape
상태를 사용합니다 - 사용자가 다른 앱을 화면 한쪽으로 끌어 움직인 경우
Filled
상태를 사용합니다 - 앱이 가로 방향에서 세로 방향으로 회전할 경우
FullScreenPortrait
상태를 사용합니다 - 사용자가 두 개의 앱을 표시하고 있고 그 중 우리가 빌드한 앱의 너비가 더 좁을 경우
Snapped
상태를 사용합니다.
위 사용예제를 아래 참조 자료를 통해서 자세히 예제를 통해서 확인해보시기 바랍니다.
[참고자료]
다양한 레이아웃에 맞게 조정