Wie behandeln Sie Eine Ansicht mit mehreren ViewModel und Feuer verschiedene Befehle?

Habe ich senario, in dem eine view und view hat Bindung mit mehreren ViewModel.

ZB. Eine Ansicht anzeigen Telefon Detail und ViewModel als pro Balg:

  • Telefon grundlegende Funktionen - PhoneViewModel,
  • Telefon Preis Detail - PhoneSubscriptionViewModel,
  • Handy-Zubehör - PhoneAccessoryViewModel
  • Für Allgemeine Eigenschaften - PhoneDetailViewModel

Ich platziert Anzeigen der Allgemeinen Eigenschaften, um PhoneViewModel.Jetzt senario ist wie folgt:

Durch die Standard-Ansicht zeigt Handy Basic feaures, die binden mit ObservationCollection von PhoneViewModel. Meine Meinung button - 'Ansicht Zubehör', onclick der Schaltfläche ein popup-Bildschirm - in meinem design habe ich anzeigen/ausblenden Raster und binden Sie es mit ObservationCollection von PhoneAccessoryViewModel.

Nun problem beginnt - Zubehör-Liste haben auch Sie den button 'View Details' onclick habe ich um zu öffnen ein popup-Fenster, auch hier hatte ich gelegt, ein Raster und Sichtbar/Verstecken. Ich bind 'ViewAccessoryDetailCommand' Befehl 'Detail-Ansicht' - button. Und auf Befehl die Ausführung einer Funktion ausgelöst und die Eigenschaft festlegen, die Sichtbar ist das Popup-Fenster.

Verwendung solcher Programmierung Befehl feuert, Funktionsaufrufe, aber die änderung der Eigenschaft nicht erhöht und daher ist meine Sicht der nicht-display-popup.

Zusammenfassung:
Eine Ansicht--> ViewModel1-->Grid Binden Ansicht ViewModel2 -->Grid-Button und Onclick-Anzeige neuen Grid, die gebundenen mit ViewModel3-dieser Befehl feuert, aber die Eigenschaft nicht erhöht.

Ich denke, es gibt einige problem in meiner Methodik, Bitte, geben Sie Ihr suggetions.

  • Ich Las dies mehrere Male und war immer noch nicht in der Lage zu verstehen, was Sie tun. Vielleicht, wenn Sie post eigentlichen code-Beispielen wird es klarer, was du machst und was schief geht.
  • In einfachen Worten kann ich sagen, dass ich mich ändern will-aktualisieren der Ansicht in Eine Ansicht und mehrere ViewModel-senario.
Schreibe einen Kommentar