Je n'arrive pas à comprendre comment passer des paramètres à mes modèles de vue à partir d'autres vues ou modèles de vue.Passer des paramètres dans ViewModels (Prism)
Par exemple, j'ai une vue appelée Clients. Il y a une grille à l'intérieur, et si vous double-cliquez sur la grille, une nouvelle vue est censée apparaître et vous permettre d'éditer les données de ce client. Mais comment la View (Model) responsable de l'édition des données va-t-elle savoir quel client elle est censée ouvrir si je ne peux pas passer de paramètres à l'intérieur?
EventAggregator est hors de question car je ne peux évidemment pas créer des centaines d'arguments, chacun pour une vue. Et d'ailleurs, c'est une solution minable.
Jusqu'à présent, j'ai pu venir avec:
CustomerDataView custView = new CustomerDataView(customerId, currentContext);
manager.Regions[RegionNames.Sidebar].AddAndActivate(custView);
Que pensez-vous de cette solution particulière? Est-ce la façon dont c'est normalement fait? Ce que je n'aime pas à ce sujet est le fait que je perds sur l'injection de dépendance automatique par Unity.
lorsque le paramètre parametererrerride est une instance de classe personnalisée, le code ne peut pas fonctionner correctement, mais s'il s'agit d'une valeur de chaîne ou d'une valeur int, le code fonctionne correctement. – huoxudong125