Как проверить изображение в кеше с помощью Silverlight - PullRequest
2 голосов
/ 17 декабря 2008

Я создаю базовое приложение для просмотра изображений с помощью Silverlight. В зависимости от скорости соединения пользователя отображение некоторых изображений может занять некоторое время после нажатия на ноготь большого пальца. Я хотел бы показать индикатор выполнения во время загрузки. Я выполнил эту часть.

Однако, если изображение уже находится в кэше (просмотр предыдущего изображения), я бы предпочел, чтобы индикатор выполнения не вспыхивал, а затем исчезал. Есть ли способ узнать, находится ли определенный файл в кеше, прежде чем я отображу индикатор выполнения?

1 Ответ

1 голос
/ 17 декабря 2008

Подумав некоторое время, я нашел одно решение, хотя изначально это не было тем, что я намеревался.

Я использую класс WebClient для получения файла изображения. Я прикрепляю к событию DownloadProgressChanged. Если изображение уже было загружено, то значение ProgressPercentage сразу равно 100.

Таким образом, вместо того, чтобы сделать ProgressBar видимым, когда я вызываю OpenReadAsync, и сделать его невидимым при запуске события Completed, я устанавливаю видимость в обработчике события DownloadProgressChanged.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...