Я использую MVVMCross для моего проекта Xamarin iOS. Я использую кнопку внутри ячейки. Я хочу подключить его к viewModel через команду, но по какой-то причине я не могу успешно их связать.Xamarin iOS - MVVMCross: невозможно подключить кнопку в пользовательской ячейке с командой в ViewModel
Может кто-нибудь, пожалуйста, посмотрите и сообщите мне, где я делаю неправильно, или какие обновления я должен внести в свой код.
Вид:
public partial class MyCell : MvxCollectionViewCell
{
public PostImageCell(IntPtr handle) : base(handle)
{
this.DelayBind(() =>
{
var bSet = this.CreateBindingSet<MyCell, SomeViewModel>();
bSet.Bind(Btn).To(vm => vm.EditPhotoCommand);
bSet.Apply();
});
}
}
ViewModel:
public class SomeViewModel : BaseCoreViewModel
{
public SomeViewModel()
{
editPhotoCommand = new BaseMvxCommand(DoShow);
}
public ICommand EditPhotoCommand { get { return editPhotoCommand; } }
private void DoShow()
{
//
}
}
Я сохранил некоторые контрольные точки и понял, что, когда MyCell
конструктор вызывается код внутри this.DelayBind()
не является хитом, поэтому я попытался удалить this.DelayBind
, но все равно бесполезно. Всякий раз, когда я нажимаю на кнопку внутри клетки, его не связываясь с командой внутри ViewModel
Находит ли ваш 'Btn' контроль на' UIButton'? Если не какой тип? – Plac3Hold3r
@ Plac3Hold3r Да, его вывод из UIButton – TheDeveloper
Ажар Али вы могли бы предоставить образец, который повторяет эту проблему? – Plac3Hold3r