using Model.Classes; using Model.Managers; namespace Ohara; public partial class ModalIle : ContentPage { public Manager manager => (App.Current as App).manager; public Ile nouvelIle; public string ancienNom; public ModalIle() { if(manager.SelectedItem != null) { nouvelIle=(Ile)manager.SelectedItem; ancienNom = manager.SelectedItem.Nom; } else { this.nouvelIle = new Ile("Ile", "", "", 0, 0, "", ""); } InitializeComponent(); BindingContext = nouvelIle; } private async void ButtonConfirmer_Clicked(object sender, EventArgs e) { if (manager.SelectedItem != null) { if (nouvelIle.PremierChap < 0 || nouvelIle.PremierEp < 0) { await DisplayAlert("Erreur", "Les paramètres PremierChap et PremierEp doivent être superieur à 0.", "OK"); return; } manager.ModifierIle(nouvelIle,ancienNom); manager.SelectedItem=nouvelIle; } else { if (nouvelIle.PremierChap < 0 || nouvelIle.PremierEp < 0) { await DisplayAlert("Erreur", "Les paramètres PremierChap et PremierEp doivent être superieur à 0.", "OK"); return; } manager.AjouterIle(nouvelIle); } await Navigation.PopModalAsync(); } private async void ButtonAnnuler_Clicked(object sender, EventArgs e) { await Navigation.PopModalAsync(); } private async void ButtonImage_Clicked(object sender, EventArgs e) { var result = await FilePicker.PickAsync(new PickOptions { PickerTitle = "Choisissez une image ...", FileTypes = FilePickerFileType.Images, }); if (result != null) { var stream = result.FullPath; nouvelIle.Image = stream; } } }