1

私は WPF アプリケーションを開発しており、ウィンドウに 7200 個の画像を表示する必要があります。各画像サイズは 300x300 です。私のコード "*.xaml" を以下に示します。

  <ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
        <ItemsControl ItemsSource="{Binding Results}">
            <ItemsControl.ItemsPanel>
                <ItemsPanelTemplate>
                    <StackPanel Orientation="Vertical"/>
                </ItemsPanelTemplate>
            </ItemsControl.ItemsPanel>
            <ItemsControl.ItemTemplate>
                <DataTemplate>
                    <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Height="180">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="40" />
                            <ColumnDefinition Width="180" />
                            <ColumnDefinition Width="180" />
                            <ColumnDefinition Width="180" />
                            <ColumnDefinition Width="180" />
                            <ColumnDefinition Width="180" />
                        </Grid.ColumnDefinitions>
                            <Grid Grid.Column="0" Margin="2">
                                <Label Content="{Binding Frame}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                            </Grid>
                            <Grid Grid.Column="1" Margin="2">  
                                <Grid.Background>
                                    <ImageBrush ImageSource="{Binding FrameImage}"/>
                                </Grid.Background>
                                <Image Source="{Binding FrameImage}"/>
                            </Grid>
                            <Grid Grid.Column="2" Margin="2">
                                <Grid.Background>
                                    <ImageBrush ImageSource="{Binding FrameMatch}"/>
                                </Grid.Background>
                                <Image Source="{Binding FrameMatch}"/>
                            </Grid>
                            <Grid Grid.Column="3" Margin="2">
                                <Grid.Background>
                                    <ImageBrush ImageSource="{Binding ObjMatch}"/>
                                </Grid.Background>
                                <Image Source="{Binding ObjMatch}"/>
                            </Grid>
                            <Grid Grid.Column="4" Margin="2">

                                <Image Source="{Binding ObjImage}"/>
                            </Grid>
                            <Grid Grid.Column="5" Margin="2">
                                <Label Content="{Binding Fitness}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                            </Grid>
                        </Grid>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>
   </ScrollViewer>

問題は、プログラムが大量のメモリを消費することです。この問題を克服することは可能ですか? 誰でも私に解決策を教えてもらえますか?

4

1 に答える 1