Dans ma classe ViewModel J'ai une propriété:Comment déclencher la mise à jour de la source de liaison du code dans WPF?
class ViewModel : INotifyPropertyChanged
{
public string FileName {get;set;}
}
et dans mon View
Je lie le contenu d'une étiquette de ViewModel FileName
.
maintenant Lorsque je fais glisser un fichier vers mon View par glisser-déposer, comment puis-je mettre à jour la propriété Content
du label, afin que les FileName
du ViewMode soient également mis à jour via la liaison?
La définition directe de la propriété Content
de l'étiquette ne fonctionnera pas, elle efface simplement la liaison.
alors la vue devra savoir à propos du ViewModel, est-ce anti-pattern? – Benny
J'ai implémenté INotifyPropertyChanged – Benny
Eh bien, la vue connaît toujours le ViewModel, car il a une référence à celui-ci (DataContext) et a des liaisons à ses propriétés ... Si le ViewModel connaissait la vue, * alors * vous casseriez le motif –