Как указывает Ганс, вы спите в потоке пользовательского интерфейса.Это предотвратит обновление пользовательского интерфейса до завершения цикла for.Убедитесь, что вы спите в фоновом режиме, а затем обновите поток пользовательского интерфейса.Вот и пример псевдокода
BackgroundWorker bgw = new BackgroundWorker();
bgw.DoWork += (sender, e) = {
for loop {
Deployment.Current.Thread.BeginInvoke(() => {
ImageReadDecode
});
Thread.Sleep(2000);
}
}
bgw.RunAsync();
Обратите внимание, что использование BeginInvoke не гарантирует, что ваши изображения будут добавлены / загружены по порядку одновременно.Он помещает его в поток пользовательского интерфейса и позволяет потоку пользовательского интерфейса определить, когда он его добавит.
Надеюсь, в этом есть какой-то смысл.Примеров более чем достаточно на стеке потока, как обрабатывать поток пользовательского интерфейса и фоновый поток.