2010-08-24 7 views
1

Je veux soulever PropertyChanged pour les 20 propriétés de mon ViewModel à une fois et obtenir la solution:PropertyChanged pour toutes les propriétés: Message = propriété introuvable

RaisePropertyChanged(String.Empty) 

voir: C#/WPF: PropertyChanged for all Properties in ViewModel?

Depuis que j'utilise GalaSoft.MvvmLight.ViewModelBase.RaisePropertyChanged de MVVM Light, j'obtiens l'erreur d'exécution:

Message=Property not found 
    ParamName="" 
    Source=GalaSoft.MvvmLight.WPF4 

Cela est dû au fait que MVVM Light vérifie tous les noms de propriété.

Que puis-je faire?

Répondre

2

Si vous regardez la source, vous verrez que cette exception n'est levée que lorsque vous compilez comme DEBUG. Si vous compilez comme RELEASE, vous n'obtiendrez plus ce comportement. Comme Kent l'a dit, j'ai changé la source pour faire Debug.Writeline au lieu de lancer une exception. Je n'aime pas le comportement par défaut, d'autant plus que je vais généralement sur-relancer PropertyChanged vers un ViewModel parent à partir d'une liste de ViewModels enfants.

Questions connexes