modif Partition en PartitionView pour regler probleme incompatibilité + ajout barre de recherche semifonctionnelle (manque plus que l'actualisation de l'affichage)

pull/8/head
Vivien DUFOUR 2 years ago
parent 24e2621a38
commit 9eb96aba78

@ -56,4 +56,10 @@
<PackageReference Include="Plugin.Maui.Audio" Version="1.0.0" />
</ItemGroup>
<ItemGroup>
<Compile Update="Views\PartitionView.xaml.cs">
<DependentUpon>PartitionView.xaml</DependentUpon>
</Compile>
</ItemGroup>
</Project>

@ -51,6 +51,7 @@
PlaceholderColor="White"
VerticalTextAlignment="Center"
HorizontalTextAlignment="Start"
TextChanged="SearchBar_TextChanged"
/>
<Image Grid.Row="0" Grid.Column="2"

@ -1,11 +1,15 @@
using Plugin.Maui.Audio;
using MusiLib.Model;
namespace MusiLib.Views;
public partial class Accueil : ContentPage, IAllowClick
{
public Manager MyManager => (App.Current as App).MyManager;
private List<Partition> partitionsInitiales;
public Accueil()
{
InitializeComponent();
@ -33,7 +37,7 @@ public partial class Accueil : ContentPage, IAllowClick
if (int.TryParse(idAutomation, out int id))
{
Navigation.PushAsync(new Partition(id));
Navigation.PushAsync(new PartitionView(id));
}
@ -43,6 +47,8 @@ public partial class Accueil : ContentPage, IAllowClick
private void chargerPartitions()
{
partitionsInitiales = MyManager.partitions.ToList();
int imagesParLigne = 3;
int indice = 0;
@ -89,4 +95,18 @@ public partial class Accueil : ContentPage, IAllowClick
}
}
private void SearchBar_TextChanged(object sender, TextChangedEventArgs e)
{
string texteRecherche = e.NewTextValue;
MyManager.partitions.Clear();
foreach (Model.Partition partition in partitionsInitiales)
{
if (partition.Nom.ToLower().Contains(texteRecherche.ToLower()))
{
MyManager.partitions.Add(partition);
}
}
}
}

@ -38,7 +38,7 @@ public partial class Favoris : ContentPage, IAllowClick
if (int.TryParse(idAutomation, out int id))
{
Navigation.PushAsync(new Partition(id));
Navigation.PushAsync(new PartitionView(id));
}
IAllowClick.ResumeTap();

@ -1,112 +1,112 @@
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MusiLib.Views.Partition"
xmlns:model="clr-namespace:MusiLib.Model"
xmlns:local="clr-namespace:MusiLib.Views"
Title="Partition">
<ScrollView Orientation="Both">
<VerticalStackLayout >
<HorizontalStackLayout x:Name="Part">
<CarouselView ItemsSource="{Binding Image}" ItemsLayout="VerticalList" PeekAreaInsets="0">
<CarouselView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding .}" HeightRequest="600" WidthRequest="400" Aspect="AspectFill"/>
</DataTemplate>
</CarouselView.ItemTemplate>
</CarouselView>
<VerticalStackLayout Margin="15" WidthRequest="375">
<Label Text="{Binding Description}" />
<Grid Margin="15">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition Height="70"/>
<RowDefinition Height="25"/>
<RowDefinition Height="70"/>
<RowDefinition Height="25"/>
<RowDefinition Height="70"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="125"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Button Grid.Row="1" Grid.Column="0"
Text="A"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="1" Grid.Column="1"
Text="B"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="3" Grid.Column="0"
Text="C"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="3" Grid.Column="1"
Text="Mettre en favori"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="AddFavoriButton"
/>
<Button Grid.Row="5" Grid.Column="0"
Text="Jouer"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="Play_Music"
x:Name="play_music_button"
/>
<Button Grid.Row="5" Grid.Column="1"
Text="Arrêter"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="Stop_Music"
/>
</Grid>
</VerticalStackLayout>
</HorizontalStackLayout>
<Border Stroke="#000080" >
<CollectionView x:Name="Part2" ItemsSource="{Binding partitions}" ItemsLayout="HorizontalList" >
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid Padding="10">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Image Grid.Row="1" Grid.Column="2"
Source="{Binding Image[0]}"
Aspect="AspectFill"
HeightRequest="65"
WidthRequest="65"
/>
<Label Grid.Row="2" Grid.Column="2"
Text="{Binding Nom}"
FontSize="10"
HorizontalOptions="Center"
/>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</Border>
</VerticalStackLayout>
</ScrollView>
</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MusiLib.Views.PartitionView"
xmlns:model="clr-namespace:MusiLib.Model"
xmlns:local="clr-namespace:MusiLib.Views"
Title="Partition">
<ScrollView Orientation="Both">
<VerticalStackLayout >
<HorizontalStackLayout x:Name="Part">
<CarouselView ItemsSource="{Binding Image}" ItemsLayout="VerticalList" PeekAreaInsets="0">
<CarouselView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding .}" HeightRequest="600" WidthRequest="400" Aspect="AspectFill"/>
</DataTemplate>
</CarouselView.ItemTemplate>
</CarouselView>
<VerticalStackLayout Margin="15" WidthRequest="375">
<Label Text="{Binding Description}" />
<Grid Margin="15">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition Height="70"/>
<RowDefinition Height="25"/>
<RowDefinition Height="70"/>
<RowDefinition Height="25"/>
<RowDefinition Height="70"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="125"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Button Grid.Row="1" Grid.Column="0"
Text="A"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="1" Grid.Column="1"
Text="B"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="3" Grid.Column="0"
Text="C"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
/>
<Button Grid.Row="3" Grid.Column="1"
Text="Mettre en favori"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="AddFavoriButton"
/>
<Button Grid.Row="5" Grid.Column="0"
Text="Jouer"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="Play_Music"
x:Name="play_music_button"
/>
<Button Grid.Row="5" Grid.Column="1"
Text="Arrêter"
WidthRequest="75"
HeightRequest="75"
HorizontalOptions="Start"
Clicked="Stop_Music"
/>
</Grid>
</VerticalStackLayout>
</HorizontalStackLayout>
<Border Stroke="#000080" >
<CollectionView x:Name="Part2" ItemsSource="{Binding partitions}" ItemsLayout="HorizontalList" >
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid Padding="10">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Image Grid.Row="1" Grid.Column="2"
Source="{Binding Image[0]}"
Aspect="AspectFill"
HeightRequest="65"
WidthRequest="65"
/>
<Label Grid.Row="2" Grid.Column="2"
Text="{Binding Nom}"
FontSize="10"
HorizontalOptions="Center"
/>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</Border>
</VerticalStackLayout>
</ScrollView>
</ContentPage>

@ -5,7 +5,7 @@ using System.Diagnostics;
namespace MusiLib.Views;
public partial class Partition : ContentPage
public partial class PartitionView : ContentPage
{
public Manager MyManager => (App.Current as App).MyManager;
@ -13,13 +13,13 @@ public partial class Partition : ContentPage
public int IdTab { get; set; }
public Partition()
public PartitionView()
{
InitializeComponent();
BindingContext = MyManager;
}
public Partition(int id)
public PartitionView(int id)
{
InitializeComponent();
IdTab = id;
Loading…
Cancel
Save