2010-10-23 7 views
0

Y a-t-il des collections qui suivent les modifications apportées à la collection? dire quel objet est supprimé/modifié/ajouté? Le ObservableCollection donne simplement des notifications, il ne conservera pas la propriété supprimée, par exemple une propriété RemovedItems. Je dois les garder quelque part. En fait, pourquoi je pose la question est si je lier une collection à une grille de données, il semble que je dois faire le suivi moi-même, je souhaite qu'il y ait une collection pour faire la mise à jour de la base de données.collections qui suivent les changements?

Le DataTable suit les modifications, mais il n'est pas si simple de travailler avec.

Répondre

2

Essayez ObservableCollection. D'après le texte de référence:

représente une collection de données dynamiques qui fournit des notifications lorsque des éléments sont ajoutés, supprimés, ou lorsque la liste entière est actualisée.

EDIT. Vous pouvez également essayer de résoudre votre problème en utilisant des ensembles de données (c'est-à-dire la classe DataSet et connexes). Ils peuvent faire des versions de lignes et garder la trace des changements d'état des lignes (nouveaux, édités, supprimés), donc cela peut fonctionner pour vous. C'est une bonne introduction au sujet: http://msdn.microsoft.com/en-us/library/ww3k31w0.aspx

+0

Il suffit de donner des notifications, il ne conservera pas la propriété supprimée, disons une propriété RemovedItems. Je dois les garder quelque part. En fait, pourquoi je pose la question est si je lier une collection à une grille de données, il semble que je dois faire le suivi moi-même, je souhaite qu'il y ait une collection pour faire la mise à jour de la base de données. Merci. – Benny

+0

@Benny: Je vous suggère de mettre à jour votre question avec cette clarification pour le bénéfice de tout le monde. Dans tous les cas, le cours que je propose peut vous être très utile: il suffit d'écouter les événements et d'enregistrer les éléments que vous modifiez vous-même. Il n'y a aucune collection dans les bibliothèques fournies qui effectue le suivi pour vous. Juste au cas où vous vous sentez aventureux, j'ajoute un edit à ma réponse. – CesarGon

+0

Merci. Edited ma question. +1 pour vous – Benny

Questions connexes