【问题标题】:How do I obtain horizontal scrolling like in the Microsoft Weather app?如何像在 Microsoft Weather 应用程序中一样获得水平滚动?
【发布时间】:2017-07-29 22:10:16
【问题描述】:

在 Windows UWP Microsoft 天气应用的移动版本中,有一个滚动查看器可以垂直向下滚动页面。

但是在页面内,有一个每日预报,可以水平滚动。我尝试在页面上的垂直滚动查看器中使用滚动查看器,但无法让水平滚动查看器中的内容滚动。

我有的是这样的

<Page ...>

<Grid >

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


    <!--EntranceNavigationTransitionInfo.IsTargetElement="True"-->
    <ScrollViewer  Grid.Row="1"  ScrollViewer.VerticalScrollMode="Enabled"  HorizontalAlignment="Stretch"   VerticalAlignment="Stretch" ViewChanged="ScrollViewer_ViewChanged"  >

        <StackPanel HorizontalAlignment="Stretch" VerticalAlignment="Center"  Margin="15,0,15,0" >



            <Grid HorizontalAlignment="Center" Padding="0,0,0,20">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"></ColumnDefinition>
                </Grid.ColumnDefinitions>
                <StackPanel Orientation="Vertical" Grid.Column="0">

                </StackPanel>
            </Grid>



            <Grid HorizontalAlignment="Center">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"></ColumnDefinition>
                    <ColumnDefinition Width="Auto" ></ColumnDefinition>
                </Grid.ColumnDefinitions>
                <StackPanel Grid.Column="0" Orientation="Vertical" Padding="0,0,0,0" Margin="0,0,15,0">


                </StackPanel>
                <StackPanel Grid.Column="1" Orientation="Vertical">


                </StackPanel>
            </Grid>

            <RichTextBlock Foreground="White"  Margin="0,20,0,0"   VerticalAlignment="Bottom">

            </RichTextBlock>

            <ScrollViewer Margin="0,20,0,0" HorizontalScrollMode="Enabled" HorizontalAlignment="Stretch" VerticalScrollMode="Disabled" VerticalScrollBarVisibility="Disabled">
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">

                    <!--In here i have horizontal row of items that I want the user to scroll horizontally to view them like in the MS Weather app -->

                </StackPanel>
            </ScrollViewer>

        </StackPanel>

    </ScrollViewer>
</Grid>

【问题讨论】:

    标签: xaml uwp


    【解决方案1】:

    我建议你应该添加HorizontalScrollBarVisibility="Visible"。这可能是因为您在Scrollview 中有一个Scrollview,那里会有一个错误。应该是这样的:

    <ScrollViewer Margin="0,20,0,0" HorizontalScrollMode="Enabled" HorizontalAlignment="Stretch" VerticalScrollMode="Disabled" VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Visible">
                    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
    
                        <!--In here i have horizontal row of items that I want the user to scroll horizontally to view them like in the MS Weather app -->
    
                    </StackPanel>
                </ScrollViewer>
    

    希望对你有帮助!

    【讨论】:

    • 成功了。非常感谢!但是请在您的答案中修复最后一个滚动查看器属性,应该是 Horizo​​ntalScrollBarVisibility='Visible'。
    • 道歉。修复!很高兴它有帮助! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多