Xamarin formulaire de mise à jour listView itemSource
Ok j'ai un ListView
objet qui ont une List<Filiale>
comme ItemSource
et je voudrais rafraîchir la ItemSource
chaque fois que la liste de modification de l'objet. La liste a un personnalisé ItemTemplate
Pour l'instant, je l'ai fait:
public NearMe ()
{
list=jM.ReadData ();
listView.ItemsSource = list;
listView.ItemTemplate = new DataTemplate(typeof(FilialeCell));
searchBar = new SearchBar {
Placeholder="Search"
};
searchBar.TextChanged += (sender, e) => {
TextChanged(searchBar.Text);
};
var stack = new StackLayout { Spacing = 0 };
stack.Children.Add (searchBar);
stack.Children.Add (listView);
Content = stack;
}
public void TextChanged(String text){
//DOSOMETHING
list=newList;
}
Comme vous pouvez le voir dans la TextChanged méthode-je attribuer une nouvelle liste de la précédente, mais il n'y a pas de changements dans la vue.
Dans le ViewCell
que j'ai créé je attribuer au champ de Texte de l'étiquette avec le SetBinding
vous pouvez hériter de votre viewmodel (si vous utilisez) à partir de INotifyPropertyChanged
Découvrez cette link qui peut vous aider..
Découvrez cette link qui peut vous aider..
OriginalL'auteur Davide Quaglio | 2015-01-09
Vous devez vous connecter pour publier un commentaire.
Vous pouvez définir la ItemsSource de la ListView null, puis retournez de nouveau, qui ne une table de rechargement.
http://forums.xamarin.com/discussion/18868/tableview-reloaddata-equivalent-for-listview
OriginalL'auteur danfordham
Ok, voici comment j'ai résolu le problème, tout d'abord j'ai créé un "wrapper" qui mettent en œuvre des
INotifyPropertyChanged
pour la liste que je prenais comme ItemSource comme ceci :Puis dans le NearMe classe:
OriginalL'auteur Davide Quaglio
Vous pouvez définir une base de modèle d'affichage et d'hériter de INotifyPropertyChanged
puis dans votre viewmodel (Ex. JM) sera hériter de
BaseViewModel
et peut créer
ObservableCollection<YOURLISTCLASS>
ListeAussi vos champs dans le ViewModel (Ex. JM) devraient mettre en œuvre comme suit:
Espère que cette aide.
OriginalL'auteur SoftSan
Changer de Liste de ObservableCollection et implémenter INotifyPropertyChanged avoir des changements reflètent dans votre Liste.
Vous devriez le faire. Vous prolonger élément de modèle: msdn.microsoft.com/en-us/library/ms743695(v=vs. 110).aspx
C'était Qui, Pourquoi pas
Qu'entendez-vous par là?
Il a été évoqué l', Vous devriez le faire, il semble que vous avez mal lu ma question.
OriginalL'auteur Martijn00