J'ai un ListView avec 3 colonnes (nom d'utilisateur, actif et groupe) Le ItemsSource est lié à un StaticResourceActualiser les données dans ListView
ItemsSource="{Binding Source={StaticResource SortedUsers}, UpdateSourceTrigger=PropertyChanged}"
la ressource statique est définie comme:
<CollectionViewSource x:Key="SortedUsers" Source="{Binding UsersList, UpdateSourceTrigger=PropertyChanged}">
<CollectionViewSource.SortDescriptions>
<scm:SortDescription
Direction="Ascending"
PropertyName="UserName" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
L'utilisateur peut sélectionner un élément dans la liste et cliquer sur "Modifier" pour modifier les informations sur l'utilisateur ou cliquer sur un bouton "Ajouter" pour ajouter un nouvel utilisateur à la liste. Les deux options Ajouter et Modifier utilisent la même boîte de dialogue modale pour permettre l'installation/la modification d'un nouvel utilisateur. L'ajout d'un utilisateur fonctionne correctement, le nouvel utilisateur apparaît dans la liste dès que la boîte de dialogue modale se ferme. toutefois, la modification d'un utilisateur existant ne met pas à jour les données dans ListView jusqu'à ce que la fenêtre contenant la liste soit fermée puis rouverte. Que dois-je faire pour avoir la mise à jour ListView pour modifier?
merci pour votre temps. Oui, l'objet implémente INotifyPropertyChanged et la liste IS est ObservableCollection. La liste augmentera si des éléments y sont ajoutés mais, pour une raison quelconque, les champs individuels de la grille ne sont pas mis à jour si les données changent. Peut-être que l'objet sous-jacent qui contient les données de champ n'implémente pas INotifyPropertyChanged. – ihatemash