2013-07-01 2 views
0

В моем приложении Windows 8 (C# + xaml) у меня есть много файлов (почти изображений) в IsolatedStorage.
Для отображения изображений я использую прямое связывание с IS-файл, как это:Удалить StorageFile, которые напрямую связаны с представлением

public BitmapImage BitmapImage 
{ 
    get 
    { 
     return new BitmapImage(new Uri("ms-appdata:///local/" + FolderName + "/" + FileName)); 
    } 
} 

Все прекрасно работает. Но когда я хочу удалить файлы, которые я сейчас показываю на странице, у меня есть UnauthorizedAccessException. Для удаления я использую это:

await storageFile.DeleteAsync(); 

Мой вопрос: Я не могу удалить файл, так как он используется для связывания. Как сделать так, чтобы я мог удалить его?

+0

Вы добавили правильные возможности в свое приложение? – keyboardP

+0

есть. Я могу удалить все файлы, которые не привязаны к локальным полям. Я думаю, что доступ запрещен, потому что мое приложение использует этот файл, и система не может его удалить. Мне нужен способ отключить или прекратить использование этих файлов; – jimpanzer

+0

Я уже использую BitmapImage = null, но он не работает – jimpanzer

ответ

-1

Согласно this post, вам необходимо удалить изображение из родительского элемента управления, чтобы освободить файловый ресурс.

grid.Children.Remove(BitmapImage); 
BitmapImage = null; 
+0

-1? Могу я узнать почему ? – orel

Смежные вопросы