Pracuję nad aplikacją Windows 10 uwp. Mam gridview, który zawiera obrazy i są wiązane w czasie wykonywania dynamicznie z c # końca, ale kiedy przewijam szybko i czasami przewijania w górę niektóre obrazy znikają pozostawiając puste miejsce. Zrobiłem to samo w systemie Windows 8.1 bez problemu ale tutaj myślę, że istnieje pewna optymalizacja xaml, dlatego zastanawiał się, jak to wyłączyć?
Kod XAML:
<GridView x:Name="gv" Margin="8,0,8,8"
Grid.Row="1"
SizeChanged="GridView_SizeChanged"
IsItemClickEnabled="True"
ItemClick="gv_ItemClick"
SelectionMode="Single">
<GridView.ItemContainerStyle>
<Style TargetType="GridViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="VerticalContentAlignment" Value="Stretch"/>
</Style>
</GridView.ItemContainerStyle>
<GridView.ItemTemplate>
<DataTemplate>
<Grid>
<Image Source="{Binding Thumbnail,Converter={StaticResource imageConverter}}"
Stretch="UniformToFill" />
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
A z konwertera wartości uzyskuję obrazy i konwertuję je na Bitmap Image for Binding. Obraz dla odniesienia
Odpowiedzi:
1 dla odpowiedzi № 1Okej, rozwiązałem to, otaczając <GridView>
z a <ScrollViewer>
. Wyłącza to optymalizację gridview. Należy zauważyć, że jest to obejście problemu i może wpływać na wydajność gridview w inny sposób. Używaj go na własne ryzyko.