Frage Gibt es eine andere Methode, um iOS ICommands in MvvmCross 3.0.14 zu binden?


Das Tutorial N = 5 der N + 1 Tage von MvvmCross baut sich in Xamarin Studio gut auf, wenn es heruntergeladen wird. Wenn ich die Assemblys von 3.0.5 auf 3.0.14 aktualisiere, wird das iOS-Projekt jedoch nicht mehr erstellt. Der Fehler hat mit diesen zwei Zeilen zu tun:

set.Bind(button).To(vm => vm.MyCommand);
set.Bind(button2).To(vm => vm.GoSecondCommand);

Die Fehlermeldung lautet wie folgt:

Umwandlung von 'Lambda-Ausdruck' in Nicht-Delegate-Typ 'Zeichenfolge' nicht möglich

Hat sich die Funktionsweise geändert? Der Objektbrowser zeigt die korrekte Methode an Func<TSource, object> aber es scheint, dass der Compiler das verwenden will string Ausführung. Das seltsame Ding ist, dass die zwei Linien darüber, die an regelmäßige Eigenschaften binden, gut funktionieren, aber der ICommand gebundenes Zeug versagt.


5
2017-12-03 04:04


Ursprung


Antworten:


Seit N = 5 gefilmt wurde, haben Xamarin ihre eigene PCL-Unterstützung hinzugefügt

Im Rahmen dieser Unterstützung müssen Sie eine Projektreferenz für Ihr Touch UI-Projekt hinzufügen System.Windows.dll im Abschnitt Assemblies von Add Reference.

Diese System.Windows-Assembly enthält eine Typweiterleitungsdefinition von ICommand - und dies sollte Ihren Kompilierungsfehler beheben


17
2017-12-03 07:13