semblant de databinding sur partition ajouter

code
Maxime ANDRE-MASSE 2 years ago
parent 4024db45fd
commit 44f140bb6c

@ -15,6 +15,8 @@ namespace MusiLib.Model
[DataMember] [DataMember]
public string Nom { get; private set; } public string Nom { get; private set; }
[DataMember] [DataMember]
public string Image { get; private set; }
[DataMember]
public int IdPartition { get; private set; } public int IdPartition { get; private set; }
[DataMember] [DataMember]
public string Auteur { get; private set; } public string Auteur { get; private set; }
@ -27,7 +29,7 @@ namespace MusiLib.Model
[DataMember] [DataMember]
public string Son { get; private set; } public string Son { get; private set; }
public Partition(string nom, string auteur, int complexite, string description, string instrument) public Partition(string nom, string auteur, int complexite, string description, string instrument,string image)
{ {
Nom = nom; Nom = nom;
IdPartition = idTotal; IdPartition = idTotal;
@ -35,6 +37,7 @@ namespace MusiLib.Model
Complexite = complexite; Complexite = complexite;
Description = description; Description = description;
Instrument = instrument; Instrument = instrument;
Image=image;
} }
} }

@ -19,11 +19,12 @@ namespace MusiLib.Stub
utilisateurs.Add(kevin); utilisateurs.Add(kevin);
utilisateurs.Add(michel); utilisateurs.Add(michel);
Partition amazing_grace = new Partition("Amazing Grace", "John Newton", 1, "Amazing Grace est l'un des cantiques chrétiens les plus célèbres dans le monde anglophone. La première publication des paroles date de 1779. Associé à diverses mélodies au fil des années, il est aujourd'hui interprété sur la musique de New Britain", "piano"); Partition amazing_grace = new Partition("Amazing Grace", "John Newton", 1, "Amazing Grace est l'un des cantiques chrétiens les plus célèbres dans le monde anglophone. La première publication des paroles date de 1779. Associé à diverses mélodies au fil des années, il est aujourd'hui interprété sur la musique de New Britain", "piano","partition.png");
Partition au_clair_de_la_lune = new Partition("Au clair de la lune", "Édouard-Léon Scott de Martinville", 1, "Au clair de la lune est une chanson populaire française dont la mélodie, très caractéristique, ainsi que les paroles — surtout celles du premier couplet — sont si familières qu'elles ont fait l'objet d'innombrables citations, adaptations, parodies, pastiches, etc.", "piano"); Partition au_clair_de_la_lune = new Partition("Au clair de la lune", "Édouard-Léon Scott de Martinville", 1, "Au clair de la lune est une chanson populaire française dont la mélodie, très caractéristique, ainsi que les paroles — surtout celles du premier couplet — sont si familières qu'elles ont fait l'objet d'innombrables citations, adaptations, parodies, pastiches, etc.", "piano","partition.png");
Partition aura_lee_love_me = new Partition("aura_lee_love_me_tender", "e", 2, "e", "oro", "partition.png");
favoris.Add(amazing_grace); favoris.Add(amazing_grace);
favoris.Add(au_clair_de_la_lune); favoris.Add(au_clair_de_la_lune);
favoris.Add(aura_lee_love_me);
return (favoris, utilisateurs); return (favoris, utilisateurs);
} }

@ -2,6 +2,7 @@
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" <ContentPage 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="MusiLib.Views.Accueil" x:Class="MusiLib.Views.Accueil"
xmlns:model="clr-namespace:MusiLib.Model"
Title="Accueil" Title="Accueil"
BackgroundColor="White"> BackgroundColor="White">
@ -59,7 +60,7 @@
HorizontalOptions="Center" HorizontalOptions="Center"
Margin="100,0,0,0" Margin="100,0,0,0"
/> />
<ImageButton Grid.Row="0" Grid.Column="3" <ImageButton Grid.Row="0" Grid.Column="3"
Source="etoile.png" Source="etoile.png"
WidthRequest="50" WidthRequest="50"

@ -6,7 +6,7 @@
Title="Partition"> Title="Partition">
<ScrollView Orientation="Both"> <ScrollView Orientation="Both">
<VerticalStackLayout> <VerticalStackLayout x:Name="Part">
<HorizontalStackLayout> <HorizontalStackLayout>
<Image Source="partition.png" <Image Source="partition.png"
HeightRequest="600" HeightRequest="600"
@ -73,6 +73,35 @@
</Grid> </Grid>
</VerticalStackLayout> </VerticalStackLayout>
</HorizontalStackLayout> </HorizontalStackLayout>
<CollectionView ItemsSource="{Binding partitions}" ItemsLayout="HorizontalList">
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid Padding="10">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<BoxView Grid.Column="0" Grid.Row="0" Color="Blue"/>
<Image Grid.Row="1" Grid.Column="1"
Source="{Binding Image}"
Aspect="AspectFill"
HeightRequest="75"
WidthRequest="75"
/>
<Label Grid.Row="2" Grid.Column="1"
Text="{Binding Nom}"
/>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</VerticalStackLayout> </VerticalStackLayout>
</ScrollView> </ScrollView>
</ContentPage> </ContentPage>

@ -1,4 +1,4 @@
using M.Models;
using Microsoft.Maui.Controls.PlatformConfiguration; using Microsoft.Maui.Controls.PlatformConfiguration;
using MusiLib.Model; using MusiLib.Model;
@ -14,7 +14,7 @@ public partial class Partition : ContentPage
public Partition() public Partition()
{ {
InitializeComponent(); InitializeComponent();
Part.BindingContext = MyManager;
} }
private void Play_Music(object sender, EventArgs e) private void Play_Music(object sender, EventArgs e)

Loading…
Cancel
Save