C#
Tony Fages 2 years ago
parent 7bf21da261
commit 84585d29b7

@ -5,6 +5,7 @@ using System.IO;
using System.Collections.Generic;
using System.Diagnostics;
using ParionsCuite.Modeles;
using System.Collections.ObjectModel;
namespace ParionsCuite.DataContractPersistance
{
@ -16,22 +17,22 @@ namespace ParionsCuite.DataContractPersistance
public DataContractPersistance() { }
public List<Evenement> chargeDonnees()
public ObservableCollection<Evenement> chargeDonnees()
{
var serializer = new DataContractSerializer(typeof(List<Evenement>));
var serializer = new DataContractSerializer(typeof(ObservableCollection<Evenement>));
List<Evenement> list;
ObservableCollection<Evenement> list;
using (Stream s = File.OpenRead(Path.Combine(FilePath, FileName)))
{
list = serializer.ReadObject(s) as List<Evenement>;
list = serializer.ReadObject(s) as ObservableCollection<Evenement>;
}
return list;
}
public void sauvegardeDonnees(List<Evenement> evenements)
public void sauvegardeDonnees(ObservableCollection<Evenement> evenements)
{
var serializer = new DataContractSerializer(typeof(List<Evenement>));
var serializer = new DataContractSerializer(typeof(ObservableCollection<Evenement>));
if (!Directory.Exists(FilePath))
{
Debug.WriteLine("Sauvegarde des données dans:");

@ -26,20 +26,25 @@
<!-- Première colonne -->
<Grid Grid.Column="0" BackgroundColor="LightGray" x:Name="GridMenu">
<StackLayout>
<Button Text="Groupe 1"
VerticalOptions="Center"
HorizontalOptions="Center"/>
<Button Text="+"
VerticalOptions="Center"
HorizontalOptions="Center" Clicked="Button_Clicked"/>
</StackLayout>
</Grid>
<!-- Deuxième colonne -->
<!-- Première colonne -->
<ScrollView Grid.Column="0" BackgroundColor="LightGrey">
<StackLayout x:Name="ButtonStackLayout">
<Button Text="test"
VerticalOptions="Center"
HorizontalOptions="Center"/>
<Button Text="test"
VerticalOptions="Center"
HorizontalOptions="Center"/>
<Button Text="test"
VerticalOptions="Center"
HorizontalOptions="Center"/>
</StackLayout>
</ScrollView>
<!-- Deuxième colonne -->
<Grid Grid.Column="1">
<!-- Création de 2 lignes -->
<Grid.RowDefinitions>

@ -1,4 +1,5 @@
using System;
using System.Collections.ObjectModel;
using Microsoft.Maui.Controls;
using Microsoft.Maui.Platform;
using Microsoft.VisualBasic;
@ -11,11 +12,11 @@ namespace ParionsCuite;
public partial class MainPage : ContentPage
{
public MainPage()
public MainPage()
{
InitializeComponent();
}
this.BindingContext = this;
}
public void VueInfo(object sender, EventArgs e)

@ -15,13 +15,12 @@ namespace ParionsCuite.Modeles
[DataMember]
public string Nom { get; private set; }
[DataMember]
public DateTime Date { get; private set; }
public string Date { get; private set; }
[DataMember]
public string Lieu { get; private set; }
[DataMember]
public int Heure { get; private set; }
[DataMember]
public int Minute { get; private set; }
public string Heure { get; private set; }
[DataMember]
public Participation Participation { get; private set; }
[DataMember]
@ -31,23 +30,21 @@ namespace ParionsCuite.Modeles
/* Constructeur */
public Evenement(string nom, DateTime date, string lieu, int heure, int minute)
public Evenement(string nom, string date, string lieu, string heure)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
Minute = minute;
ListInviter = new List<Inviter>();
ListParier = new List<Parier>();
}
public Evenement(string nom, DateTime date, string lieu, int heure, int minute, Participation participation)
public Evenement(string nom, string date, string lieu, string heure, Participation participation)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
Minute = minute;
Participation = participation;
ListInviter = new List<Inviter>();
ListParier = new List<Parier>();
@ -108,13 +105,12 @@ namespace ParionsCuite.Modeles
}
/* Setter */
public void SetEvenement(string nom, DateTime date, string lieu, int heure, int minute)
public void SetEvenement(string nom, string date, string lieu, string heure)
{
Nom = nom;
Date = date;
Lieu = lieu;
Heure = heure;
Minute = minute;
return;
}

@ -1,12 +1,13 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace ParionsCuite.Modeles
{
public interface IPersistanceManager
{
public List<Evenement> chargeDonnees();
public void sauvegardeDonnees(List<Evenement> evenements);
public ObservableCollection<Evenement> chargeDonnees();
public void sauvegardeDonnees(ObservableCollection<Evenement> evenements);
}
}

@ -13,26 +13,26 @@ namespace ParionsCuite.Modeles
{
public event PropertyChangedEventHandler PropertyChanged;
public List<Evenement> Evenement { get; private set; }
public ObservableCollection<Evenement> Evenement { get; private set; }
public List<Inviter> Invites { get; set; }
public IPersistanceManager Persistance { get; set; }
public Manageur(IPersistanceManager Pers) {
Invites = new List<Inviter>();
Evenement = new List<Evenement>();
Evenement = new ObservableCollection<Evenement>();
Persistance = Pers;
}
public Manageur()
{
Evenement = new List<Evenement>();
Evenement = new ObservableCollection<Evenement>();
Invites = new List<Inviter>();
}
public Manageur(List<Evenement> evenements)
public Manageur(ObservableCollection<Evenement> evenements)
{
Evenement = evenements.ToList();
Evenement = evenements;
}
public bool Ajout_evenement(Evenement ev)
@ -81,7 +81,10 @@ namespace ParionsCuite.Modeles
public void Charge_Donnee()
{
var donnees = Persistance.chargeDonnees();
this.Evenement.AddRange(donnees);
foreach (var donnee in donnees)
{
Evenement.Add(donnee);
}
}

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using ParionsCuite.Modeles;
namespace ParionsCuite.Stub;
@ -9,9 +10,9 @@ public class Stub : IPersistanceManager
{
}
public List<Evenement> chargeDonnees()
public ObservableCollection<Evenement> chargeDonnees()
{
List<Evenement> lisEvent = new List<Evenement>();
ObservableCollection<Evenement> lisEvent = new ObservableCollection<Evenement>();
List<Boisson> boissons = new List<Boisson>();
List<Nourriture> nourritures = new List<Nourriture>();
List<Autre> autres = new List<Autre>();
@ -23,12 +24,12 @@ public class Stub : IPersistanceManager
autres.Add(a);
Participation p = new(boissons,nourritures, autres);
DateTime dt = new(2018, 7, 24);
Evenement e = new ("nom", dt, "lieu", 12, 30, p);
Evenement e = new ("nom", "dt", "lieu", "12", p);
lisEvent.Add(e);
return lisEvent;
}
public void sauvegardeDonnees(List<Evenement> evenements)
public void sauvegardeDonnees(ObservableCollection<Evenement> evenements)
{
throw new NotImplementedException();
}

@ -8,7 +8,7 @@ namespace ParionsCuite.Views;
public partial class Groupe : ContentView
{
public Manageur mgr = new Manageur();
public List<Evenement> Evenements { get; set; } = new List<Evenement>();
public ObservableCollection<Evenement> Evenements { get; set; } = new ObservableCollection<Evenement>();
public Groupe()
{

@ -5,7 +5,9 @@ namespace ParionsCuite.Views.Information;
public partial class Info : ContentView
{
public Info()
public Manageur mgr => (App.Current as App).MyManager;
public Info()
{
InitializeComponent();
MiseAJourInfo();

@ -5,7 +5,7 @@
x:Class="ParionsCuite.Views.Invite.Inviter">
<VerticalStackLayout >
<!--Grid Pincipale-->
<Grid ColumnDefinitions="8*,*,10*">
<Grid ColumnDefinitions="8*,*,10*" x:Name="gridInvite">
<!--Input des noms et prenoms-->
<StackLayout Grid.Column="0" >

@ -5,7 +5,7 @@ namespace ParionsCuite.Views.Invite;
public partial class Inviter : ContentView
{
public Manageur m = new Manageur();
public Manageur mgr => (App.Current as App).MyManager;
public Modeles.Inviter Inviters { get; private set; } = new Modeles.Inviter();
public Inviter()
@ -21,7 +21,7 @@ public partial class Inviter : ContentView
public void restoreListInvite()
{
List<Modeles.Inviter> listInvite = m.ReturnListInvite();
List<Modeles.Inviter> listInvite = mgr.ReturnListInvite();
Debug.WriteLine(listInvite);
int len = listInvite.Count;
foreach (Modeles.Inviter inviter in listInvite) {
@ -63,10 +63,11 @@ public partial class Inviter : ContentView
string prenom = prenomEditor.Text;
if (nom == null || prenom == null) { return; }
Modeles.Inviter invite1 = new Modeles.Inviter(nom, prenom);
List<Modeles.Inviter> invites = m.AddInvite(invite1);
int len = 1;//m.LenListInvite(invites);
List<Modeles.Inviter> invites = mgr.AddInvite(invite1);
int len = 1;
//if (len == 0 ) { len = 1; }
Debug.WriteLine("LA taille de la liste est de " + m.LenListInvite(invites));
Debug.WriteLine("LA taille de la liste est de " + mgr.LenListInvite(invites));
foreach (Modeles.Inviter inviter in invites)
{
RowDefinition row = new RowDefinition();
@ -98,7 +99,7 @@ public partial class Inviter : ContentView
GrilleInvite.Children.Add(buttonMoins );
//GrilleInvite.HeightRequest = Height + 2;
len++;
len = len +1 ;
}
}
@ -141,12 +142,12 @@ public partial class Inviter : ContentView
string nom = nomLabel.Text;
// Rechercher l'invité correspondant dans la liste
Modeles.Inviter inviter = m.ReturnListInvite().FirstOrDefault(i => i.Prenom == prenom && i.Nom == nom);
Modeles.Inviter inviter = mgr.ReturnListInvite().FirstOrDefault(i => i.Prenom == prenom && i.Nom == nom);
if (inviter != null)
{
// Supprimer l'invité de la liste
m.RemoveInviter(inviter);
mgr.RemoveInviter(inviter);
// Supprimer les éléments de la ligne de la grille
parentGrid.Children.Remove(prenomLabel);

Loading…
Cancel
Save