Gibt es ein Beispiel dafür, wie ein DelegateCommand für ein in F # geschriebenes Ansichtsmodell aufgerufen wird?
Ich habe den folgenden Code für eine DelegateCommand-Implementierung hier gefunden:
%Vor%Ich bin jedoch nicht sicher, ob ich diese Implementierung verwenden sollte oder ob es einen anderen Ansatz gibt, den ich nutzen sollte.
Hier ist ein Test, den ich ausführen möchte, sobald ich herausgefunden habe, wie man einen DelegateCommand ausführt:
%Vor%Mein Ansichtsmodell ist das folgende:
%Vor%Ich habe das folgende Basisansichtsmodell:
%Vor%Aktualisierung:
Ich habe den in der MVVM-Projektvorlage für F # definierten RelayCommand folgendermaßen geändert:
%Vor%Ich habe dann mein Viewmodel wie folgt aktualisiert:
%Vor%Ich bin mir jedoch nicht sicher, wie ich die Execute-Funktion im Submit (DelegateCommand) aufrufen kann:
%Vor%Ich weiß, dass das trivial ist, aber ich habe ehrlich keine Ahnung, wie ich das machen soll.
Irgendwelche Vorschläge?
Ändern Sie die Submit
Implementierung in diese:
und nenne es so:
%Vor% Die wichtige Änderung besteht darin, dass der Rückgabetyp Submit
jetzt ICommand
anstelle von DelegateCommand
ist. Dies liegt an der Verwendung des Upcast-Operators :>
.
In F # sind alle Schnittstellen explizit implementiert . Dies bedeutet, dass, obwohl DelegateCommand
ICommand
implementiert, die Methoden von ICommand
nicht für Objekte sichtbar sind, die als DelegateCommand
deklariert (oder abgeleitet) werden. Wenn der Wert für den Typ ICommand
deklariert (oder abgeleitet) wird, sind andererseits nur die Mitglieder von ICommand
verfügbar.
Da ich MVC oder MVVM nicht mit F # verwendet habe, kann ich kein spezifisches Codebeispiel angeben.
Für
Allerdings bin ich mir nicht sicher, ob ich das verwenden sollte Implementierung oder wenn es einen anderen Ansatz gibt, den ich sein sollte Hebelwirkung.
Wenn Sie Visual Studio verwenden, das auch eine Community-Edition das kann kostenlos heruntergeladen werden, es gibt Vorlagen für MVC und MVVM.
Um über das Menü auf die Vorlagen von VS zuzugreifen.
Datei - & gt; Neu - & gt; Projekt
Erweitern Sie Online
Erweitern Vorlagen |
Erweitern Sie Visual F #
Geben Sie oben rechts für "Online-Vorlagen suchen" einen Begriff wie MVC oder MVVM ein
Wähle einen aus oder untersuche ein paar.
Hinweis: Einige der Templates sind ein paar Jahre alt und F # und Windows haben sich auf dem Weg weiterentwickelt, so dass ich die älteren eher meiden würde. Auch die Autoren der beliebtesten sind in der Regel online zu finden und sogar einige sind hier, also stellen Sie Fragen über Besonderheiten.
Sie können auch andere Vorlagen, Steuerelemente und Erweiterungen für VS in der Visual Studio-Galerie anzeigen mit einem Internetbrowser.
Achtung: Einige der Erweiterungen verursachen Probleme bei der Installation, insbesondere bei älteren oder weniger bekannten, also seien Sie vorsichtig und installieren Sie sie erst auf einem Produktionsrechner, wenn Sie sie auf einem anderen testen Maschine zuerst.
Tags und Links f#