2014-08-31 78 views
0

在我的佈局中,我有兩個部分將有一個變量高度,我想能夠一個接一個地流動,所以我創建了一個堆棧面板。在堆棧面板內部是另一個堆棧面板和一個列表視圖。出於某種原因,當列表視圖位於此外層堆棧面板內時,我無法垂直滾動。顯然有更多的項目可以看到 - 我可以拉出物品清單(當您將元素拉出超出其內容時獲得的垃圾效果)並查看更多物品,但我無法翻閱它們。當我將列表視圖移出堆棧面板時,它會完美滾動,但這會打破預期佈局。有任何想法嗎?下面是本節中的XAML:將列表視圖放置到堆棧面板打破垂直滾動

<Grid Grid.Row="1" Grid.Column="1"> 
    <StackPanel Orientation="Vertical"> 
     <StackPanel DataContext="{Binding SelectedLink}"> 
      <TextBlock Text="{Binding Author}" Foreground="Blue" FontSize="20"/> 
      <TextBlock Text="{Binding Title}" TextWrapping="WrapWholeWords"/> 
      <TextBlock Text="{Binding SelfText}" TextWrapping="Wrap" Margin="0, 20, 0, 0" /> 
     </StackPanel> 
     <ListView x:Name="CommentsListView" ItemsSource="{Binding SelectedLinkComments}" IsItemClickEnabled="True" IsSwipeEnabled="False" IsHoldingEnabled="True" Holding="CommentsListView_OnHolding"> 
      <ListView.ItemTemplate> 
       <DataTemplate> 
        <Border BorderBrush="Gray" Padding="2" Margin="2"> 
         <StackPanel Orientation="Vertical"> 
          <TextBlock Text="{Binding Author}" Foreground="Green"/> 
          <TextBlock Text="{Binding Body}"/> 
         </StackPanel> 
        </Border> 
       </DataTemplate> 
      </ListView.ItemTemplate> 
     </ListView> 
    </StackPanel> 
</Grid> 
+0

什麼是外部網格行高度定義? – Jon 2014-09-02 20:54:41

+0

就像人們所期望的那樣。 2行,(自動,*)和2列(自動,*) – Sinaesthetic 2014-09-03 02:06:49

+0

由於StackPanel將增長到適合整個列表,解決方案是刪除外部StackPanel並將行添加到內部Grid(auto,*)和地點第0行的內部StackPanel和第1行的ListView。 – Jon 2014-09-03 17:26:02

回答

1

像這樣:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 
    <StackPanel Grid.Row="0"> 
     <!-- your textblocks --> 
    </StackPanel> 
    <ListView Grid.Row="1" /> 
</Grid> 

這將讓它滾動就好了。

祝你好運!

+1

大聲笑 - 很好,您在上面的評論中提出了一個答案。 – Jon 2014-09-04 15:58:55