databinding homePage
continuous-integration/drone/push Build is failing Details

pull/28/head
Vianney JOURDY 2 years ago
parent d81846eecb
commit 0eb5cc11c4

@ -29,7 +29,7 @@
Margin="30"
/>
<HorizontalStackLayout BindableLayout.ItemsSource="{Binding Oeuvres}" Spacing="100" HorizontalOptions="Center">
<!--<HorizontalStackLayout BindableLayout.ItemsSource="{Binding Oeuvres}" Spacing="100" HorizontalOptions="Center">
<BindableLayout.ItemTemplate>
<DataTemplate>
<ImageButton
@ -38,10 +38,28 @@
Source="{Binding Affiche}"
Clicked="AnimeImageClicked"
/>
<!--<views:StyleBouton -->
--><!--<views:StyleBouton --><!--
</DataTemplate>
</BindableLayout.ItemTemplate>
</HorizontalStackLayout>
</HorizontalStackLayout>-->
<ScrollView>
<Grid x:Name="grille">
<Grid.RowDefinitions >
<RowDefinition Height="85"/>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
</Grid>
</ScrollView>
<ListView x:Name="a1" ItemsSource="{Binding Utilisateurs}">

@ -9,20 +9,60 @@ public partial class homePage : ContentPage
public homePage()
{
InitializeComponent();
BindingContext = my_manager;
chargerSerie();
}
private async void AnimeImageClicked(object sender, EventArgs e)
{
var selectedAnime = (sender as ImageButton)?.BindingContext as Oeuvre;
if (selectedAnime != null)
//var selectedAnime = (sender as ImageButton)?.BindingContext as Oeuvre;
//if (selectedAnime != null)
//{
// // Naviguez vers la page de la fiche d'anime en passant l'objet sélectionné
// await Navigation.PushAsync(new ficheAnime(selectedAnime));
//}
var button = (ImageButton)sender;
var idAutomation = button.AutomationId;
if (int.TryParse(idAutomation, out int id))
{
await Navigation.PushAsync(new ficheAnime(my_manager.Oeuvres[id]));
}
}
private void chargerSerie()
{
int imagesParLigne = 4;
int indice = 0;
for (int i = 0; i < my_manager.Oeuvres.Count; i++)
{
// Naviguez vers la page de la fiche d'anime en passant l'objet sélectionné
await Navigation.PushAsync(new ficheAnime(selectedAnime));
Oeuvre favoris = my_manager.Oeuvres[i];
ImageButton imageButton = new ImageButton
{
Source = favoris.Affiche,
WidthRequest = 150,
HeightRequest = 170,
CornerRadius = 15,
Aspect = Aspect.Fill,
AutomationId = indice.ToString(),
};
imageButton.Clicked += AnimeImageClicked;
int ligne = 1 + (indice / imagesParLigne);
int colonne = indice % imagesParLigne;
Grid.SetRow(imageButton, ligne);
Grid.SetColumn(imageButton, colonne);
grille.Children.Add(imageButton);
indice++;
}
}
}

@ -70,52 +70,21 @@
HorizontalOptions="End" VerticalOptions="Center"/>
</Grid>
<ScrollView Grid.Row="3" VerticalScrollBarVisibility="Always">
<VerticalStackLayout Spacing="10">
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" BackgroundColor="#FFFFFF" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="Test Titre" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" BackgroundColor="Blue" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="Test Titre" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" BackgroundColor="Red" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="Test Titre" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" BackgroundColor="#FFFFFF" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="Test Titre" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" BackgroundColor="Blue" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="Test Titre" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
<ScrollView Grid.Row="1" VerticalScrollBarVisibility="Always">
<VerticalStackLayout BindableLayout.ItemsSource="{Binding UtilisateurActuel.ListeOeuvreDejaVu}" Spacing="10">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Grid Margin="20,0,20,0" ColumnDefinitions="*,*,300,300">
<ImageButton Grid.Column="0" Source="{Binding Affiche}" BackgroundColor="#FFFFFF" WidthRequest="100" HeightRequest="100" HorizontalOptions="Start"/>
<Label Grid.Column="1" Text="{Binding Nom}" FontSize="Medium" VerticalOptions="Center" Margin="15"/>
<Label Grid.Column="2" Text="4/5" VerticalOptions="Center" HorizontalOptions="Center"/>
<Label Grid.Column="3" Text="10/85" VerticalOptions="Center" HorizontalOptions="End"/>
</Grid>
</DataTemplate>
</BindableLayout.ItemTemplate>
</VerticalStackLayout>
</ScrollView>
</Grid>
</Frame>

@ -10,35 +10,5 @@ public partial class listPage : ContentPage
{
InitializeComponent();
BindingContext = my_manager;
//if (my_manager.UtilisateurActuel.Email != null)
//{
// chargerFavoris();
//}
}
private void chargerFavoris()
{
int indice = 0;
for (int i = 0; i < my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage.Count; i++)
{
Oeuvre favoris = my_manager.UtilisateurActuel.ListeOeuvreEnVisionnage[i];
ImageButton imageButton = new ImageButton
{
Source = favoris.Affiche,
WidthRequest = 100,
HeightRequest = 100,
};
int ligne = 1 + indice;
Grid.SetRow(imageButton, ligne);
Grid.SetColumn(imageButton, 0);
//grille.Children.Add(imageButton);
indice++;
}
}
}
Loading…
Cancel
Save