Я хочу предварительно загрузить ресурсы изображения при запуске приложения. Изображения должны кэшироваться в памяти приложения. Поэтому я могу использовать предварительно загруженные изображения в своем приложении.
Проблема, если я загружаю конкретное представление с большим количеством изображений внутри, приложение зависает на несколько секунд, после этого представление появится. Приложение основано на XAML, но исходное свойство элементов управления изображением динамически изменяется.
Я проверил несколько вещей, но ничего не работает.
var uri = new Uri ( "pack://application:,,,/Vibrafit.Demo;component/Resources/myImage.jpg", UriKind.RelativeOrAbsolute ); //unit.Image1Uri;
var src = new BitmapImage ( uri );
src.CacheOption = BitmapCacheOption.None;
src.CreateOptions = BitmapCreateOptions.None;
src.DownloadFailed += delegate {
Console.WriteLine ( "Failed" );
};
src.DownloadProgress += delegate {
Console.WriteLine ( "Progress" );
};
src.DownloadCompleted += delegate {
Console.WriteLine ( "Completed" );
};
но изображение не загружается. Единственный способ загрузить изображение — показать его на экране в элементе управления изображением и назначить свойство-источник моему вновь созданному объекту BitmapImage-Object. Но я не хочу показывать все изображения при запуске.