ISupportIncrementalLoading in ScrollViewer wird nicht unterstützt?

Ich habe einRasteransicht mitGridView.ItemsSource Auf eine Sammlung setzen, die implementiert wirdISupportIncrementalLoading. Mit dieser Implementierung möchte ich die Ladezeit und die Reaktionszeit der Benutzeroberfläche verbessern, indem nur Elemente geladen werden, die für die Anzeige benötigt werden. Das Framework erledigt das für mich und es funktioniert großartig.

    <GridView ItemsSource="{Binding Items}">
        <GridView.ItemTemplate>
            <DataTemplate>
                <TextBlock Text="{Binding Text}"/>
            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>

jedoch, wenn ich die obige XAML wie folgt in einen ScrollViewer einbinde,Die gesamte Sammlung von Gegenständen wird geladen als ob das GridView nicht erkennen kann, wo seine Grenzen liegen.

<ScrollViewer>
    <GridView ItemsSource="{Binding Items}">
        <GridView.ItemTemplate>
            <DataTemplate>
                <TextBlock Text="{Binding Text}"/>
            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>
</ScrollViewer>

Ich weiß, dass der ScollViewer zulässt, dass der Inhalt so viel Platz einnimmt, wie er möchte. Der Effekt hier ist also sinnvoll. Es ist nur ein unvorhergesehener Ärger. Hat jemand eine Lösung, um dieses Problem zu umgehen?

Hinweis: Ich habe den Code hier zum Beispiel vereinfacht. Falls es hilfreich ist zu wissen, was ich erreichen möchte: Mein Ziel ist es, ein inkrementell geladenes GridView in einem HubSection auf meiner Hub-Seite zu haben. Auf meiner Hub-Seite befinden sich 2 Hub-Abschnitte, einer mit einer Breite von 600 Pixel und der andere mit der GridView ohne definierte Breite.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage