我将要构建一个简单的照片库应用程序,它会在列表框中显示图片。以下是XAML代码:
<ListBox x:Name="imageList" Margin="10,10" ItemsSource="{Binding}" Height="500">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding}" HorizontalAlignment="Left"></TextBlock>
<Image Source="{Binding}" Width="100" Height="100" HorizontalAlignment="Center"></Image>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
这里设置的DataContext是一个包含JPEG图像文件路径的字符串数组。
当我使用10-11张总大小为11MB的图片时,总内存使用量会上升到500MB!!!我非常惊讶,因为这只是一个简单的照片查看应用程序,什么都没做。运行这个应用程序使我的机器变得相当难用。
我正在使用VS 2010 Express,.NET 4和Vista。有人能解释一下后台发生了什么需要如此巨大的内存占用吗?还有什么可以优化的方法吗?
提前感谢。