Gerenciamento de recursos bloqueados (arquivos de imagem)

O aplicativo é um sistema de gerenciamento de documentos de área de trabalho. Arquivos de imagem (de documentos digitalizados) são armazenados dentro de uma pasta de rede compartilhada e seus índices dentro de um banco de dados. Agora, quando a imagem de uma página de documento selecionada é exibida, o usuário tem a opção de excluí-la (através de um menu contextual). O problema é que, se eu tentar fazer isso, ele lança uma exceção (o recurso está bloqueado), que tem todo o sentido, dado que está sendo mostrado na tela. Então, atualmente eu mantenho uma fila de exclusão persistente. Uma vez que o aplicativo é iniciado, vou para a fila e excluo as páginas dos documentos cujos índices foram excluídos do banco de dados e, como eles não estão sendo exibidos, a exclusão foi bem-sucedida, mas isso parece ser um código ruim (quero dizer, funciona, mas não tão limpo como deveria, eu acho).

Quão ruim é minha solução rápida. Como o aplicativo é de usuário único, o usuário precisa colocar o aplicativo em estrela para usá-lo. Essa é uma ideia muito ruim ou eu posso implementar usando outro caminho?

As imagens são mostradas (no visualizador de documentos) ligando-as ao arquivo atual:

Visão:

<Image Name="PageViewedPath" Margin="20" Grid.Column="0" />

ViewModel:

public string PageViewedPath { get; set; }

E uma vez que o usuário clica em próximo ou anterior eu mudo (dentro do ViewModel o PageViewedPath). Talvez o problema seja essa ligação, que não posso controlar em detalhes. Estou usando o Caliburn Micro, e é por isso que, ao definir o nome da imagem, a ligação é feita.

Eu acho que talvez a substituição dessa ligação e a criação de uma cópia impressa da imagem antes de ser mostrada, funcionem, mas não tenho certeza se ela funcionará e, pior ainda, como fazê-lo.

questionAnswers(2)

yourAnswerToTheQuestion