2013-08-21 4 views
1

У меня есть код XAML, и моя проблема заключается в том, что высота Listview не остается в пределах строки Grid, а растет с увеличением количества добавленных элементов ListViewItem. Это предотвращает прокрутку списка.ListView не прокручивает

Как я могу предотвратить это?

Вот некоторые воспроизведен код XAML:

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> 
    <Grid Margin="30, 20, 30, 20"> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="Auto"/> 
      <RowDefinition Height="Auto"/> 
      <RowDefinition Height="*" /> 
     </Grid.RowDefinitions> 

     <StackPanel Grid.Row="0"> 
      <TextBlock Text="SomeText" FontSize="40"/> 
     </StackPanel> 
     <StackPanel Grid.Row="1"> 
      <TextBlock Text="Some More Text" FontSize="30"/> 
     </StackPanel> 
     <Grid x:Name="ContGrid" Grid.Row="2"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="400"/> 
       <ColumnDefinition Width="*"/> 
      </Grid.ColumnDefinitions> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="*"/> 
      </Grid.RowDefinitions> 

      <Viewbox HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="0" Stretch="None" Width="AUto"> 
       <StackPanel x:Name="holderPanel" Margin="5" Grid.Column="0" Grid.Row="0" Orientation="Vertical"> 
        <TextBlock Text="SomeCategories" FontSize="20"/> 
        <ListView CanDragItems="True" CanReorderItems="True" AllowDrop="True" Width="380"> 

         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Green">Test</ListViewItem> 
         <ListViewItem Background="Purple">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Green">Test</ListViewItem> 
         <ListViewItem Background="Purple">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Green">Test</ListViewItem> 
         <ListViewItem Background="Purple">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
         <ListViewItem Background="Green">Test</ListViewItem> 
         <ListViewItem Background="Purple">Test</ListViewItem> 
         <ListViewItem Background="Blue">Test</ListViewItem> 
         <ListViewItem Background="Red">Test</ListViewItem> 
        </ListView> 
       </StackPanel> 
      </Viewbox> 

     </Grid> 
    </Grid> 
</Grid> 

ответ

1

Причина высота ListView выросла с количеством ListViewItems добавленных, потому, что ListView находится внутри StackPanel. StackPanel позволит растягиваться за пределы экрана, не позволяя полосе прокрутки.

Here является ссылкой на исходный ответ

Смежные вопросы