Обновлять элементы списка в режиме реального времени с помощью форм Xamarin pcl - C#

Моя цель - сделать обновление списка записей в режиме реального времени.

на странице загрузки я установил:

List<Myobjetcs> myitems = new List<Myobjects>();

...
...
        listView.IsVisible = false;
        listView.RowHeight = 55;
        listView.IsPullToRefreshEnabled = true;
        listView.Refreshing += ListView_Refreshing;
        listView.ItemTapped += ListView_ItemTapped;
        listView.SeparatorVisibility = SeparatorVisibility.None;
        listView.SeparatorColor = Color.Black;
        listView.ItemsSource = myitems;

каждые 10 секунд (с API) они будут обновлять данные, только несколько записей, случайным образом. Моя цель - обновить элемент без обновления представления списка... и без установки для ItemSource значения null, а затем переназначить данные.

 public async void setSuperficie()
 {
      //here i receive the result of API (every 10 seconds) and update record listview. 
 }

Я пытался вставить ItemSource с циклом for и обновить данные, но не работает.

это возможно сделать?

listView.ItemsSource[index].Property = Value;

1 ответ

Что такое "миитемс"?

Вы должны использовать ObservableCollection

ObservableCollection<MyModel> myitems = new ObservableCollection<MyModel>();

затем

 public async void setSuperficie()
 {
      //here i receive the result of API (every 10 seconds) and update record listview. 
      // here you have to modify the myitems collection, adding or removing items
      myitems.add(mynewitem);
 }

Вы также должны реализовать INotifyPropertyChanged. Для этого предлагаю использовать Fody

Другие вопросы по тегам