Je cherche des conseils sur la façon d'être averti lorsque l'une des nombreuses propriétés change. Par exemple, disons que je veux lier le texte d'un contrôle à une propriété FullAddress dans mon WPF ViewModel que je peux calculer à la volée chaque fois qu'un des changements de propriétés, tels que StreetNumber, StreetName, Suburb, PostCode, etc.Génération d'une chaîne dans le code lorsque l'un des groupes de propriétés change
Je pense que j'ai besoin de lier mon contrôle d'affichage à la propriété FullAddress, mais comment est-ce que je le mets automatiquement à jour quand l'une des propriétés dépendantes change? Puis-je lier le codebehind de la propriété à plusieurs autres propriétés sur le même ViewModel? Si c'est le cas, comment? Y a-t-il un meilleur moyen?
Merci Jon, une autre réponse rapide. Cela me prend le temps de me mettre à la tête. Je comprends un peu mais à l'étape 4, comment l'abonnement INPC sait-il quelles propriétés sont dépendantes de la propriété FullAddress?Je présume que par l'objet vous voulez dire l'instance de la classe qui contient les propriétés FullAddress et dépendantes, l'objet lui-même appelle-t-il PropertyChanged sur l'ensemble de l'objet par opposition à une seule propriété? – TripleAntigen
L'abonné INPC serait une méthode privée dans votre classe. Il "sait" de quoi dépend FullAddress car vous le connaissez (si e.PropertyName == "StreetAddress" etc). L'objet est ce que tu as dit. PropertyChanged est toujours appelé sur une propriété spécifique, vous ne pouvez pas l'appeler "sur l'objet entier". Pour que cela fonctionne, FullAddress et ses propriétés dépendantes doivent appeler PropertyChanged depuis leur setter. – Jon
Merci! Je suis presque là ... donc si je comprends bien, quand vous dites 'Objet souscrit à son propre INPC' voulez-vous dire que dans chaque propriété dépend de FullAddress, j'appelle PropertyChanged pour cette propriété mais j'appelle aussi OnPropertyChanged pour le Propriété FullAddress comme indiqué les exemples de code? Ou existe-t-il un moyen pour un objet d'être averti par le backend de propriété de dépendance WPF que quelque chose dans l'objet a changé? Désolé, je ne suis pas sûr du lien entre la méthode privée et l'abonnement INPC. – TripleAntigen