Ajout info page faite

C#
Tony Fages 2 years ago
parent 3c52666e6e
commit ef00aa5f69

@ -38,7 +38,7 @@
</StackLayout> </StackLayout>
</ScrollView> </ScrollView>
<Button Text="Test" BackgroundColor="Green" Grid.Column="0" Grid.Row="1" HeightRequest="50" Clicked="Button_Clicked"/> <Button Text="+" BackgroundColor="Green" Grid.Column="0" Grid.Row="1" HeightRequest="50" Clicked="Button_Clicked"/>
<!-- Deuxième colonne --> <!-- Deuxième colonne -->
<Grid Grid.Column="1"> <Grid Grid.Column="1">

@ -15,6 +15,8 @@ public partial class MainPage : ContentPage
{ {
public Manageur mgr => (App.Current as App).MyManager; public Manageur mgr => (App.Current as App).MyManager;
Evenement EventSelect { get; set; }
public MainPage() public MainPage()
{ {
InitializeComponent(); InitializeComponent();
@ -25,25 +27,30 @@ public partial class MainPage : ContentPage
private void OnEvenementAdded(Evenement evenement) private void OnEvenementAdded(Evenement evenement)
{ {
// Logique à exécuter lorsque un événement est ajouté // Logique à exécuter lorsque un événement est ajouté
// Par exemple : affichez le nom de l'événement dans la console
Debug.WriteLine("Événement ajoutéz : " + evenement.Nom); Debug.WriteLine("Événement ajoutéz : " + evenement.Nom);
Button newButton = new Button Button newButton = new Button
{ {
Text = evenement.Nom, Text = evenement.Nom,
VerticalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center,
HorizontalOptions = LayoutOptions.Center HorizontalOptions = LayoutOptions.Center,
}; };
newButton.Clicked += (sender, e) =>
{
// Appeler la méthode qui récupère l'événement associé
SelectEvent(evenement);
};
// Ajouter le bouton au ButtonStackLayout // Ajouter le bouton au ButtonStackLayout
ButtonStackLayout.Children.Add(newButton); ; ButtonStackLayout.Children.Add(newButton); ;
} }
public void test(object sender, EventArgs e) public void SelectEvent(Evenement evenement)
{ {
Debug.WriteLine("Taille liste Evenement = " + mgr.Evenement.Count); Debug.WriteLine("Événement cliqué : " + evenement.Nom);
foreach(Evenement evenement in mgr.Evenement) Debug.WriteLine("Date : " + evenement.Date);
{ Debug.WriteLine("Lieu : " + evenement.Lieu);
Debug.Write(evenement); Debug.WriteLine("Heure : " + evenement.Heure);
} EventSelect = evenement;
} }
@ -87,7 +94,7 @@ public partial class MainPage : ContentPage
} }
private void InfoView(object sender, EventArgs e) private void InfoView(object sender, EventArgs e)
{ {
var newPage = new Views.Information.Info(); var newPage = new Views.Information.Info(EventSelect);
// Définissez le contenu de la ContentView sur la nouvelle page // Définissez le contenu de la ContentView sur la nouvelle page
changeButton.Content = newPage; changeButton.Content = newPage;

@ -38,7 +38,6 @@ namespace ParionsCuite.Modeles
private void OnEvenementAdded(Evenement evenement) private void OnEvenementAdded(Evenement evenement)
{ {
// Logique à exécuter lorsque un événement est ajouté // Logique à exécuter lorsque un événement est ajouté
// Par exemple : affichez le nom de l'événement dans la console
Debug.WriteLine("Événement ajouté : "); Debug.WriteLine("Événement ajouté : ");
} }

@ -2,23 +2,25 @@
<ContentView xmlns="http://schemas.microsoft.com/dotnet/2021/maui" <ContentView xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ParionsCuite.Views.Information.Info"> x:Class="ParionsCuite.Views.Information.Info">
<VerticalStackLayout> <VerticalStackLayout HeightRequest="1000">
<Grid HeightRequest="2000" BackgroundColor="red">
<TableView x:Name="tableview">
<TableRoot >
<TableSection Title="Informations" x:Name="tableInfo" >
<TextCell Text="Nom de l'événement" x:Name="NomEvent" Height="40"/>
<TextCell Text="Date de l'événement" x:Name="DateEvent"/>
<TextCell Text="Nombres d'invité" x:Name="NbInvite"/>
<TextCell Text="Nombres de paris" x:Name="NbPari"/>
<TextCell Text="Adresse" x:Name="AdresseEvent"/>
<TextCell Text="Horaire" x:Name="HoraireEvent"/>
</TableSection>
</TableRoot>
</TableView>
</Grid>
<StackLayout HorizontalOptions="Start" MinimumWidthRequest="1000" MinimumHeightRequest="1000" Margin="200,20,0,0" >
<TableView RowHeight="70">
<TableRoot >
<TableSection Title="Informations" x:Name="tableInfo">
<TextCell Text="Nom de l'événement" Detail ="Nom"/>
<TextCell Text="Date de l'événement" Detail ="Date"/>
<TextCell Text="Nombres d'invité" Detail ="{Binding NbInvite}"/>
<TextCell Text="Nombres de paris" Detail ="Nombre"/>
<TextCell Text="Adresse" Detail ="Adresse"/>
<TextCell Text="Horaire" Detail ="Horaire"/>
</TableSection>
</TableRoot>
</TableView>
</StackLayout>
</VerticalStackLayout> </VerticalStackLayout>
</ContentView> </ContentView>

@ -1,5 +1,6 @@
using ParionsCuite.Modeles; using ParionsCuite.Modeles;
using System.Diagnostics; using System.Diagnostics;
using System.Xml.Linq;
namespace ParionsCuite.Views.Information; namespace ParionsCuite.Views.Information;
@ -7,20 +8,29 @@ public partial class Info : ContentView
{ {
public Manageur mgr => (App.Current as App).MyManager; public Manageur mgr => (App.Current as App).MyManager;
public Info() public Info(Evenement EventSelect)
{ {
InitializeComponent(); InitializeComponent();
MiseAJourInfo(); MiseAJourInfo(EventSelect);
BindingContext = this; BindingContext = this;
}
public Manageur m = new Manageur();
public void MiseAJourInfo() }
public Manageur m = new Manageur();
public const int DefaultCellHeight = 40;
public void MiseAJourInfo(Evenement EventSelect)
{ {
int NbInvite = m.LenListInvite(m.Invites); NomEvent.Detail = EventSelect.Nom;
Debug.WriteLine(NbInvite); DateEvent.Detail = EventSelect.Date;
} int i = EventSelect.ListInviter.Count();
NbInvite.Detail = i.ToString();
int v = EventSelect.ListParier.Count();
NbPari.Detail = v.ToString();
AdresseEvent.Detail = EventSelect.Lieu;
HoraireEvent.Detail = v.ToString();
}

Loading…
Cancel
Save