Проблема с ответом, который был выбран здесь, заключается в том, что при переходе назад и вперед конвертер будет срабатывать при каждом показе страницы.
Это приводит к тому, что новые файловые дескрипторы создаются непрерывно и блокирует любые попытки удалить файл, потому что он все еще используется. Это можно проверить с помощью Process Explorer.
Если файл изображения может быть удален в какой-то момент, можно использовать такой конвертер:
использование XAML для привязки к System.Drawing.Image в элемент управления System.Windows.Image
Недостаток этого метода потока памяти заключается в том, что изображения загружаются и декодируются каждый раз, и кеширование не может быть выполнено:
«Чтобы предотвратить декодирование изображений более одного раза, назначьте свойство Image.Source из Uri вместо использования потоков памяти»
Источник: «Советы по производительности для приложений Магазина Windows, использующих XAML»
Чтобы решить проблему с производительностью, можно использовать шаблон хранилища для обеспечения уровня кэширования. Кэширование может происходить в памяти, что может вызвать проблемы с памятью, или в виде файлов миниатюр, которые находятся во временной папке, которую можно очистить при выходе из приложения.