using MercatorPenguin; using MercatorPenguin.EditCustomizers; namespace TestPenguinCustomizerTransfer { public class CustomizerTransfer : BaseEditTransferCustomizer { public CustomizerTransfer(ConstructorParams constructorParams) : base(constructorParams) { } public override async Task OnBeforeSaveAsync(BeforeSaveEventArgs e) { IEditPicker editPickerPiedIdDepot1 = Controls.OfType<IEditPicker>().FirstOrDefault(c => c.Source?.Equals("ID_DEPOT1", StringComparison.InvariantCultureIgnoreCase) ?? false); IEditPicker editPickerPiedIdDepot2 = Controls.OfType<IEditPicker>().FirstOrDefault(c => c.Source?.Equals("ID_DEPOT2", StringComparison.InvariantCultureIgnoreCase) ?? false); if ((editPickerPiedIdDepot1 == null) || (editPickerPiedIdDepot2 == null)) { await Dialogs.Stop(Page, "Erreur : Impossible de trouver les EditPickers liés à ID_DEPOT1 et/ou ID_DEPOT2 !"); return; } if (!await Dialogs.AnswerYesNo(Page, $"Voulez-vous vraiment enregistrer les modifications sur ce transfert de \"{editPickerPiedIdDepot1.DisplayValue}\" vers \"{editPickerPiedIdDepot2.DisplayValue}\" ?")) { e.CancelSave = true; } } } }