Xamarin Formularaktualisierung listView itemSource

8

Ok Ich habe ein ListView -Objekt mit einem List<Filiale> als ItemSource und ich möchte das ItemSource immer dann aktualisieren, wenn sich die Objektliste ändert. Der ListView hat ein personalisiertes ItemTemplate Für jetzt habe ich das getan:

%Vor%

Wie Sie in der TextChanged-Methode sehen können, weise ich dem vorherigen eine neue Liste zu, aber es gibt keine Änderungen in der Ansicht. In der von mir erstellten ViewCell weise ich das Textfeld der Labels dem SetBinding

zu     
DQuaglio 09.01.2015, 09:58
quelle

4 Antworten

3

Ok, hier habe ich das Problem gelöst, zuerst habe ich einen "Wrapper" erstellt, der INotifyPropertyChanged für die Liste implementiert, die ich als ItemSource genommen habe:

%Vor%

Dann in der NearMe-Klasse:

%Vor%     
DQuaglio 12.01.2015, 08:47
quelle
10

Sie können die ItemsSource der ListView auf null setzen und sie dann wieder zurücksetzen, damit die Tabelle neu geladen wird. Ссылка

    
danfordham 31.03.2015 21:54
quelle
2

Sie können ein Basisansichtsmodell definieren und von INotifyPropertyChanged

übernehmen %Vor%

wird dann in Ihrem Viewmodel (Bsp. JM) von BaseViewModel übernommen und kann ObservableCollection<YOURLISTCLASS> List

erstellen

Auch Ihre Felder in ViewModel (Bsp. JM) sollten wie folgt implementieren:

%Vor%

Hoffe, das hilft.

    
SoftSan 09.01.2015 12:50
quelle
0

Ändern Sie die Liste in ObservableCollection und implementieren Sie INotifyPropertyChanged, damit Änderungen in Ihrer ListView widergespiegelt werden.

    
Martijn00 09.01.2015 10:24
quelle

Tags und Links