I have a list that binds to an ObservableCollection and accepts a file name for displaying images 
My xaml:
<Window x:Class="ThumbnailsView.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="578" WindowStartupLocation="CenterScreen"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="55"/> </Grid.RowDefinitions> <ListBox Grid.Row="0" x:Name="ImageListbox" ItemsSource="{Binding}" Background="AliceBlue" ScrollViewer.HorizontalScrollBarVisibility="Disabled"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal"> <CheckBox Height="16" VerticalAlignment="Top" Margin="0,10,0,0"/> <Image Margin="10,10,10,0" Height="64" Width="64" VerticalAlignment="Top"> <Image.Source> <BitmapImage DecodePixelWidth="64" UriSource="{Binding Path=Name}"/> </Image.Source> </Image> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> <ListBox.ItemsPanel> <ItemsPanelTemplate> <WrapPanel/> </ItemsPanelTemplate> </ListBox.ItemsPanel> </ListBox> <Button Grid.Row="1" Content="Get Images" Name="getImageBtn" Click="getImageBtn_Click" Width="100" Height="30"></Button> </Grid> </Window>
The problem is that it uploads whole images and will consume a lot of rams if I have a large collection. How to minimize memory consumption?
Irwan source share