2011-05-08 76 views
0

我將用戶的照片存儲在獨立存儲器中並在列表框中顯示它們。我用下面的代碼從孤立的存儲檢索圖像將照片存儲在獨立存儲器中並閱讀多張照片,無需內存消耗

 BitmapImage bi = new BitmapImage(); 
     var isoFile = IsolatedStorageFile.GetUserStoreForApplication(); 
     if (isoFile.FileExists(imageFileName)) 
     { 
      using (var imageStream = isoFile.OpenFile( 
       imageFileName, 
       FileMode.Open, FileAccess.Read)) 
     { 
     //imageSource = PictureDecoder.DecodeJpeg(imageStream); 
     bi.SetSource(imageStream); 
    } 
} 
isoFile.Dispose(); 
//return imageSource; 
return bi; 

有圖像的100 stored.Everytime的圖像加載,它的內存消耗不斷增加,然後用盡memory.Is的那裏獲得什麼更好的辦法圖像消耗更少的內存。即使在加載結束時,我也使用GC.Collect()。它根本不工作。

有沒有更好的方式從孤立存儲中讀取和讀取圖像?

我讓我的用戶將照片保存在獨立存儲上。在我的情況下,隔離存儲是更好的選擇嗎?

+0

您是否想讓許多圖像同時出現或一次只出現一個? – keyboardP 2011-05-08 16:16:12

+0

一次加載的一組圖像 – 2011-05-08 17:25:32

+0

所有圖像在加載後都會解壓,因此它們的內存佔用非常大。此外,你是否重複使用圖像控件來顯示內容或創建新的?不要忘記將位圖圖像設置爲空以刪除它們。 – keyboardP 2011-05-08 17:36:29

回答

相關問題