2016-11-17 39 views
0

我正尝试建立一个UWP应用程序,我有后续的组件内:UWP的ScrollViewer一个SplitView.Content不滚动

的MainPage:

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 

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

    <StackPanel Name="TituloStackPanel" Orientation="Horizontal"> 
     <Button Name="HamburguerButton" Content="&#xE700;" FontFamily="Segoe MDL2 Assets" Height="50" Width="50" Click="HamburguerButton_Click"/> 
     <TextBlock Name="Titulo" Text="Estrutura de Dados" VerticalAlignment="Center" Margin="10"/> 
    </StackPanel> 

    <SplitView Name="PrincipalSplitView" DisplayMode="CompactOverlay" IsPaneOpen="False" 
       CompactPaneLength="50" OpenPaneLength="200" Grid.Row="1"> 
     <SplitView.Pane> 
      <StackPanel> 
       <StackPanel Orientation="Horizontal"> 
        <Button Name="ListasButton" Content="L" Width="50" Height="50" Click="ListasButton_Click"/> 
        <TextBlock Text="Listas" VerticalAlignment="Center" Margin="10"/> 
       </StackPanel> 
       <StackPanel Orientation="Horizontal"> 
        <Button Name="PilhasButton" Content="P" Width="50" Height="50"/> 
        <TextBlock Text="Pilhas" VerticalAlignment="Center" Margin="10"/> 
       </StackPanel> 
       <StackPanel Orientation="Horizontal"> 
        <Button Name="FilasButton" Content="F" Width="50" Height="50"/> 
        <TextBlock Text="Filas" VerticalAlignment="Center" Margin="10"/> 
       </StackPanel> 
      </StackPanel> 
     </SplitView.Pane> 
     <SplitView.Content> 
      <TextBlock Text="SplitView Content" VerticalAlignment="Center" HorizontalAlignment="Center"/> 
     </SplitView.Content> 
    </SplitView> 
</Grid> 

下一页将里面的内容被加载的SplitView。

<Page> 
    <Grid> 

    <Grid.ColumnDefinitions> 
    <ColumnDefinition Width="*"/> 
    <ColumnDefinition Width="200"/> 
    </Grid.ColumnDefinitions> 

    <ScrollViewer Background="Cyan" Grid.Column="1" VerticalScrollBarVisibility="Auto"> 
     <RelativePanel Padding="20" MaxHeight="700" VerticalAlignment="Top"> 
     <A lot of Components: TextBlocks, TextBoxes, RadioButtons, ... /> 
     </RelativePanel> 
    </ScrollViewer> 
    </Grid> 
</Page> 

ScrollViewer应该作为窗口右侧的工具栏。但是当我调整窗口大小时,垂直滚动不起作用。

全屏: Page in full screen

调整大小: Page resized

+0

RelativeLayout是一个自定义控件吗?它是为了什么? –

+0

您是否调整了足够大的窗口大小,以便不需要滚动条。 –

+0

@ Sunteen-MSFT,但是当我调整窗口大小时,滚动不起作用。 –

回答

1

的问题是因为你的SPLITVIEW是与<RowDefinition Height="Auto"/>的行。这使得SplitView高于屏幕并且不会因此而滚动。
对此行使用<RowDefinition Height="*"/>以使其与屏幕一样高。

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

<SplitView Grid.Row="1"> 
    .... 
</SpitView>