Xaml 长列表选择器不滚动

Xaml 长列表选择器不滚动,xaml,windows-phone-8,longlistselector,Xaml,Windows Phone 8,Longlistselector,我很难让我的长列表选择器正常工作。当列表高于屏幕时,长列表选择器保持静态,我无法滚动查看所有项目 有什么想法吗 <phone:PivotItem Header="{Binding Path=LocalizedResources.ApplicationsHeader, Source={StaticResource LocalizedStrings}}" x:Name="applicationsPivotItem"> <Grid x:Name="applications"

我很难让我的长列表选择器正常工作。当列表高于屏幕时,长列表选择器保持静态,我无法滚动查看所有项目

有什么想法吗

<phone:PivotItem Header="{Binding Path=LocalizedResources.ApplicationsHeader, Source={StaticResource LocalizedStrings}}" x:Name="applicationsPivotItem">
    <Grid x:Name="applications" Grid.Row="1">
        <phone:LongListSelector x:Name="MainLongListSelector" ItemsSource="{Binding Items}" SelectionChanged="MainLongListSelector_SelectionChanged">
            <phone:LongListSelector.ItemTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
                        <TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
                    </StackPanel>
                </DataTemplate>
            </phone:LongListSelector.ItemTemplate>
        </phone:LongListSelector>
    </Grid>
</phone:PivotItem>

固定网格的高度

<Grid x:Name="applications" Grid.Row="1" Height="400">
...long list code...
</Grid>

…长列表代码。。。

我有一个类似的问题,我的全景项目定义如下:

            <phone:PanoramaItem>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto"/>
                    </Grid.RowDefinitions>

                    <phone:LongListSelector x:Name="SpeciesList" Grid.Row="0">
                        <phone:LongListSelector.ItemTemplate>
                            <DataTemplate>
                                <StackPanel Margin="0,-6,0,12">
                                    <TextBlock Text="{Binding PrimaryName}"/>
                                </StackPanel>
                            </DataTemplate>
                        </phone:LongListSelector.ItemTemplate>
                    </phone:LongListSelector>
                </Grid>
            </phone:PanoramaItem>

通过将行定义更改为使用*而不是自动,我的滚动问题得到了解决!如下图所示

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

我也遇到了LongListSelector不滚动的问题。最后,是在LongListSelector中设置的OpacityMask=“White”导致了问题


此外,根据Mattias的说法,只要网格行定义设置为*

,我就不必设置特定的高度,这通常不符合创建响应性设计的指导原则吗?当在具有不同分辨率的设备上运行应用程序时,设置这样的显式高度可能会导致UI奇怪。这是一个比公认答案更好的解决方案。