2014-12-04 3 views
0

컨트롤을 하나 이상 갖고 싶습니다. 그 중 하나가 맨 아래에 있어야하며 위에있는 ListView가 있어야하며 사용 가능한 모든 공간을 채워야합니다. 나는 그것들을 StackPanel에 추가하려고 시도했다. VerticalAlignment = "Bottom"이지만, ListView는 스크롤 할 수 없으며 왼쪽 공간에 대해서는 신경 쓰지 않는다.Windows 저장소 앱 레이아웃 : ListView를 사용하여 남은 공간을 채우십시오.

enter image description here

답변

3

StackPanel의리스트 뷰 무한한 공간을 제공하고 이후 다른 제어, 가시 범위의 가능성이 외부 시침, 그 내용에 맞게 포맷합니다. 대신 그리드를 사용하고 행 높이를 디자인에 맞게 설정하십시오. 예 :

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*" /> 
     <RowDefinition Height="auto" /> 
    </Grid.RowDefinitions> 
    <ListView Grid.Row="0"></ListView> 
    <Button Grid.Row="1" /> 
</Grid> 

높이 = "자동"은 내용을 기준으로 높이를 계산하는 것을 의미합니다. 높이 = "*"는 남은 공간을 사용하는 것을 의미합니다 (또는 여러 개의 *가있는 경우 남은 공간을 나눕니다). 자세한 내용은 RowDefinition.Height 문서의 설명을 참조하십시오.

+0

고맙습니다. 완벽하게 작동합니다. 자습서가 자동 설정을 언급하지 않은 이유가 궁금합니다. – SPQR3

관련 문제