2013-12-03 2 views
5

Учебник N = 5 из N + 1 дней MvvmCross строит отлично в Xamarin Studio при загрузке. Однако, если я обновляю сборки с 3.0.5 до 3.0.14, проект iOS больше не будет создан. Ошибка связана с этими двумя линиями:Есть ли другой способ привязки iOS ICommands в MvvmCross 3.0.14?

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

сообщение об ошибке выглядит следующим образом:

Невозможно преобразовать `лямбда-выражение«не-делегат типа `строка»

Произошло ли изменение в том, как это работает? Браузер объектов показывает правильный метод, принимающий Func<TSource, object>, но похоже, что компилятор хочет использовать версию string. Странно, что две линии над ним, привязанные к регулярным свойствам, работают нормально, но связанный материал ICommand не работает.

ответ

17

Поскольку N = 5 был снят, Xamarin добавили свою PCl поддержки

В рамках этой поддержки, вам необходимо добавить ссылку на проект для вашего проекта UI сенсорного к System.Windows.dll в части Ассамблей Add Reference.

Эта сборка System.Windows содержит определение типа переадресации из ICommand - и это должно очистить вашу ошибку компиляции

+0

Я дважды проверил, что у меня есть System.Windows.dll, но все-таки получить ту же самую точную ошибку, он был получение. Есть ли у вас какие-либо указатели на то, где еще я мог бы смотреть? На этом я много искал. – Michael

+0

Для кого-либо еще, если вы не можете заставить это работать, сравните пакеты Nuget с решением «PictureTaking» в учебниках MvvmCross (https://github.com/MvvmCross/MvvmCross-Tutorials). Как-то у меня был пакет, называемый просто «MvvmCross», который мне не нужен. Как только я удалил это, он построил отлично. – Michael

+1

Отлично! Это помогло мне Стюарту! Благодаря! –

Смежные вопросы