вот часть моего кода:
public void refreshShowCase()
{
for (int i = 0; i < 12; ++i)
{
bitmapImage[i] = new BitmapImage(new Uri(posterURLCollection[i]));
image[i] = new Image { Source = bitmapImage[i] }; //Error occurs here****
}
}
когда я запускаю это, я получаю эту ошибку: вызывающий поток должен быть STA, потому что это требуется для многих компонентов пользовательского интерфейса.
Поэтому я добавляю свой код внутрь Disapther.Invoke
this.Dispatcher.Invoke((Action)delegate
{
BitmapImage[] bitmapImage = new BitmapImage[14];
Image[] image = new Image[14];
//Do a loop for defining Bitmaps sources
for (int i = 0; i < 12; ++i)
{
bitmapImage[i] = new BitmapImage(new Uri(posterURLCollection[i]));
image[i] = new Image { Source = bitmapImage[i] };
}
}
Теперь у меня есть эта ошибка: «Диспетчер» не существует в текущем контексте!
Как мне решить это? Пожалуйста помоги.
Обновление1: упомянутый код внутри void класса, который я создал!