public void AddIncidentIcon() { for (int i = 1; i < 6; i++) { CustomIncidentIcon incidentIcon = new CustomIncidentIcon(i); var iconTapGestureRecognizer = new TapGestureRecognizer(); iconTapGestureRecognizer.Tapped += IncidentIcon_Tapped; incidentIcon.st.GestureRecognizers.Add(iconTapGestureRecognizer); incidentIcon.st.SetBinding(StackLayout.BackgroundColorProperty, new Binding { Source = BindingContext, Path = "Images", Converter = new IncidentIconBkConvert(), Mode = BindingMode.OneWay, ConverterParameter = i }); incidentIcon.st.SetBinding(StackLayout.IsVisibleProperty, new Binding { Source = BindingContext, Path = "Images", Converter = new IncidentIconIsVisibleConvert(), Mode = BindingMode.OneWay, ConverterParameter = i }); incidentIcon.icon.SetBinding(Image.SourceProperty, new Binding { Source = BindingContext, Path = "Images", Converter = new IncidentIconSourceConvert(), Mode = BindingMode.OneWay, ConverterParameter = i }); this.incidentIconsCtrl.Children.Add(incidentIcon, i - 1, 0); } this.selectImageSource.SetBinding(Image.SourceProperty, new Binding { Source = BindingContext, Path = "Images", Converter = new IncidentSelectImageSourceConvert(), Mode = BindingMode.OneWay }); //this.selectImageSource.SetBinding(Image.AspectProperty, // new Binding { Source = BindingContext, Path = "Images", Converter = new IncidentSelectImageAspectConvert(), Mode = BindingMode.OneWay }); }
public async void IncidentIcon_Tapped(object sender, EventArgs e) { CustomIncidentIcon icon = (CustomIncidentIcon)((Element)sender).Parent; var fileModel = claimViewModel.getIncidentIconFile(icon.index); var selectFileModel = claimViewModel.getIncidentSelectIconFile(); if (selectFileModel != null) { selectFileModel.Selected = false; } if (fileModel != null) { fileModel.Selected = true; } claimViewModel.PropertyChangeImages();; }