У меня есть Telerik TransitionControl, который отображает рекламу для конечного пользователя.логика написана таким образом, что рекламные изображения будут загружаться в асинхронном режиме сзади.элемент управления будет отображать изображения в том виде, в котором они доступны.Я использую ObservableCollection для хранения рекламных изображений. Новая информация об изображениях добавляется в эту ObservableCollection, когда изображение успешно загружается.Однако Telerik TransitionControl не обновляется новыми изображениями.
Я считаю, что ObservableCollection не нужно вызывать OnNotifyPropertyChanged, поскольку он будет вызываться внутренне
Код указан ниже
//Inside the AdvertUserControl.xaml.cs
ViewModel vm = new ViewModel();
DataContext = vm;
this.radControl.SetValue(AdRotatorExtensions.AdRotatorExtensions.ItemsSourceProperty, vm.SquareAdsVertical);
// Внутри ViewModel.cs
public ReadOnlyObservableCollection<Advert> SquareAdsVertical
{
get
{
if (AdsManager.VerticalAds == null)
{
return null;
}
return new ReadOnlyObservableCollection<Advert>(AdsManager.VerticalAds);
}
}
// Inside DownloadManager.cs
private static ObservableCollection<Advert> adsToShowVertical = new ObservableCollection<Advert>();
public static ObservableCollection<Advert> VerticalAds
{
get { if (adsToShowVertical != null) return adsToShowVertical;
return null;
}
}
public static void OnDownloadComplete(Object sender, AsyncCompletedEventArgs e)
{
try
{
if(!e.Cancelled)
{
if (e.Error == null)
{
Advert ad = e.UserState as Advert ;
adsToShowVertical.Add(ad );
}
}