2016-10-28 3 views
1

2 개의 열이있는 페이지가 있습니다 각 열에는 스택 패널에 포함 된 컨트롤이 있습니다 스택 패널은 하숙인에 포함되어 있습니다.UWP XAML GridView를 사용하여 세로 공간 채우기

테두리 StackPanel의 ..... 의 gridview /StackPanel의 /보더

I는 보더 화소 값의 minHeight을 설정하지 않고 수직 높이를 작성하고 싶다.

의미 경계선이 gridview로 커지고 축소되는 것을 원하지 않습니다. 동일한 크기로 유지되어야하고, 콜럼을 채우고 여백을 존중해야합니다.

<StackPanel x:Name="RightColumn" 
     Grid.Column="1" 
     Margin="10,20,20,20"> 

    <TextBlock FontWeight="Bold" Text="Tags" /> 

    <Border BorderBrush="{StaticResource DGreen}" 
     MinHeight="500" 
      BorderThickness="2" 
      Padding="10"> 
     <StackPanel > 

      <TextBox Width="120" 
       HorizontalAlignment="Left" 
       KeyDown="{x:Bind ViewModel.AddNewTag}" 
       PlaceholderText="Add New Tag" 
       Text="{x:Bind ViewModel.NewTagToAdd, Mode=TwoWay}" /> 

      <TextBlock Margin="0,10,0,0" 
       FontWeight="Bold" 
       Text="Add Tags from this list" /> 

      <GridView Margin="0,10,0,0" MaxHeight="416" VerticalAlignment="Stretch" 
       ItemsSource="{x:Bind ViewModel.SD.TagsAvailableForSelecting}" 
       SelectionChanged="{x:Bind ViewModel.AddTagToSelectedTags, Mode=OneWay}"> 

       <GridView.ItemTemplate> 
        <DataTemplate x:DataType="dat:TagDTO"> 
         <Border Width="90" Background="{StaticResource DGreen}"> 
          <TextBlock Margin="3" 
           Foreground="{StaticResource ContrastColorBrush}" 
           Text="{x:Bind TagName}" /> 
         </Border> 
        </DataTemplate> 
       </GridView.ItemTemplate> 

      </GridView> 

     </StackPanel> 

    </Border> 

</StackPanel> 

답변

2
는 첫 번째 StackPanel Grid로 변경

. 그래서 그것은 완전한 이용 가능한 공간을 채울 수 있습니다. TextBoxAuto으로 설정된 첫 번째 행으로 이동하고 두 번째 Border은 두 번째 행으로 이동해야 *으로 설정됩니다.

다음은 예제의 모형입니다.

<Grid x:Name="RightColumn" 
     Grid.Column="1" 
     Margin="10,20,20,20"> 

     <Grid.RowDefinitions> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 

    <TextBlock FontWeight="Bold" Text="Tags" Grid.Row="0" /> 

    <Border BorderBrush="{StaticResource DGreen}" Grid.Row="1" 
      MinHeight="500" BorderThickness="2" Padding="10"> 
     <StackPanel> 
      <TextBox Width="120" 
       HorizontalAlignment="Left" 
       KeyDown="{x:Bind ViewModel.AddNewTag}" 
       PlaceholderText="Add New Tag" 
       Text="{x:Bind ViewModel.NewTagToAdd, Mode=TwoWay}" /> 
      <TextBlock Margin="0,10,0,0" 
       FontWeight="Bold" 
       Text="Add Tags from this list" /> 
      <GridView Margin="0,10,0,0" MaxHeight="416" VerticalAlignment="Stretch" 
       ItemsSource="{x:Bind ViewModel.SD.TagsAvailableForSelecting}" 
       SelectionChanged="{x:Bind ViewModel.AddTagToSelectedTags, Mode=OneWay}"> 
       <GridView.ItemTemplate> 
        <DataTemplate x:DataType="dat:TagDTO"> 
         <Border Width="90" Background="{StaticResource DGreen}"> 
          <TextBlock Margin="3" 
           Foreground="{StaticResource ContrastColorBrush}" 
           Text="{x:Bind TagName}" /> 
         </Border> 
        </DataTemplate> 
       </GridView.ItemTemplate> 
      </GridView> 
     </StackPanel> 
    </Border> 
</Grid> 
+0

예, 이제 격자 셀이 채워진 것을 기억합니다. AVK Naidu 대단히 감사합니다. – Terrence

+0

다시 시도해보십시오. 예, 지금 기억합니다. 그리드 셀이 채워집니다. AVK Naidu 대단히 감사합니다. – Terrence

관련 문제