Restructuration des vues

This commit is contained in:
Valentin Verdier 2020-11-30 21:01:45 +01:00
parent 4036e571b6
commit d93f978eb5
3 changed files with 216 additions and 177 deletions

View File

@ -5,7 +5,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Hermes" xmlns:local="clr-namespace:Hermes"
mc:Ignorable="d" mc:Ignorable="d"
Title="Informations" Height="390" Width="750" Title="Informations" Height="400" Width="750"
Icon="hermes.png" Icon="hermes.png"
ResizeMode="NoResize" ResizeMode="NoResize"
xmlns:Validation="clr-namespace:Hermes.Validation" xmlns:Validation="clr-namespace:Hermes.Validation"
@ -19,10 +19,13 @@
</Window.Resources> </Window.Resources>
<Grid> <Grid>
<StackPanel> <Grid.RowDefinitions>
<WrapPanel> <RowDefinition Height="320"/>
<StackPanel Margin="10,10,0,0" VerticalAlignment="Top"> <RowDefinition Height="*"/>
<Label>Civilité:</Label> </Grid.RowDefinitions>
<WrapPanel Grid.Row="0">
<StackPanel Margin="10,10,0,0">
<Label>Civilité :</Label>
<ComboBox Name="civiliteComboBox" SelectedItem="{Binding Civilite}" Height="23" Width="150"/> <ComboBox Name="civiliteComboBox" SelectedItem="{Binding Civilite}" Height="23" Width="150"/>
<Label>Nom :</Label> <Label>Nom :</Label>
<TextBox Name="nomTextBox" ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}" Validation.Error="ValidationError" Binding.TargetUpdated="BindingTargetUpdated" Binding.SourceUpdated="BindingSourceUpdated" HorizontalAlignment="Left" VerticalContentAlignment="Center" Height="23" Width="150"> <TextBox Name="nomTextBox" ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}" Validation.Error="ValidationError" Binding.TargetUpdated="BindingTargetUpdated" Binding.SourceUpdated="BindingSourceUpdated" HorizontalAlignment="Left" VerticalContentAlignment="Center" Height="23" Width="150">
@ -86,7 +89,7 @@
</Binding> </Binding>
</TextBox.Text> </TextBox.Text>
</TextBox> </TextBox>
<Label>Rue:</Label> <Label>Rue :</Label>
<TextBox Name="adresseRueTextBox" ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}" Validation.Error="ValidationError" Binding.TargetUpdated="BindingTargetUpdated" Binding.SourceUpdated="BindingSourceUpdated" HorizontalAlignment="Left" VerticalContentAlignment="Center" Height="23" Width="150"> <TextBox Name="adresseRueTextBox" ToolTip="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}" Validation.Error="ValidationError" Binding.TargetUpdated="BindingTargetUpdated" Binding.SourceUpdated="BindingSourceUpdated" HorizontalAlignment="Left" VerticalContentAlignment="Center" Height="23" Width="150">
<TextBox.Text> <TextBox.Text>
<Binding Path="AdresseRue" NotifyOnSourceUpdated="True" NotifyOnTargetUpdated="true" NotifyOnValidationError="true"> <Binding Path="AdresseRue" NotifyOnSourceUpdated="True" NotifyOnTargetUpdated="true" NotifyOnValidationError="true">
@ -139,10 +142,9 @@
</GroupBox> </GroupBox>
</StackPanel> </StackPanel>
</WrapPanel> </WrapPanel>
<WrapPanel HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="10,10,10,10"> <WrapPanel Grid.Row="1" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,10,0">
<Button Height="25" Margin="0,0,10,0" Width="100" Click="Save_Click">Enregister</Button> <Button Height="25" Margin="0,0,10,0" Width="100" Click="Save_Click" IsDefault="True">Enregister</Button>
<Button Height="25" Width="100" Click="Cancel_Click">Annuler</Button> <Button Height="25" Width="100" Click="Cancel_Click">Annuler</Button>
</WrapPanel> </WrapPanel>
</StackPanel>
</Grid> </Grid>
</Window> </Window>

View File

@ -12,8 +12,13 @@
<Window.Resources> <Window.Resources>
<BooleanToVisibilityConverter x:Key="Bool2VisibilityConv"/> <BooleanToVisibilityConverter x:Key="Bool2VisibilityConv"/>
</Window.Resources> </Window.Resources>
<StackPanel> <Grid>
<Menu> <Grid.RowDefinitions>
<RowDefinition Height="20"/>
<RowDefinition Height="100"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Menu Grid.Row="0">
<MenuItem Header="Fichier"> <MenuItem Header="Fichier">
<MenuItem Header="Exporter..."/> <MenuItem Header="Exporter..."/>
<MenuItem Header="Importer..."/> <MenuItem Header="Importer..."/>
@ -23,7 +28,26 @@
<MenuItem Header="Supprimer" Click="Supprimer_Click"/> <MenuItem Header="Supprimer" Click="Supprimer_Click"/>
</MenuItem> </MenuItem>
<MenuItem Header="Affichage"> <MenuItem Header="Affichage">
<MenuItem x:Name="completeViewCheckbox" Header="Vue détaillée" IsCheckable="true"/> <MenuItem Name="civiliteViewCheckBox" Header="Civilité" IsCheckable="true"/>
<MenuItem Name="nomViewCheckBox" Header="Nom" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="nomNaissanceViewCheckBox" Header="Nom de naissance" IsCheckable="true"/>
<MenuItem Name="prenomViewCheckBox" Header="Prénom" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="ageViewCheckBox" Header="Age" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="professionViewCheckBox" Header="Profession" IsCheckable="true"/>
<MenuItem Name="typeResidenceViewCheckBox" Header="Résidence" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="quartierViewCheckBox" Header="Quartier" IsCheckable="true"/>
<MenuItem Name="adresseNumeroViewCheckBox" Header="Numéro de rue" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="adresseRueViewCheckBox" Header="Rue" IsCheckable="true" IsChecked="True"/>
<MenuItem Name="adresseBatimentViewCheckBox" Header="Bâtiment" IsCheckable="true"/>
<MenuItem Name="adresseExtNumeroViewCheckBox" Header="Numéro de rue (autre)" IsCheckable="true"/>
<MenuItem Name="adresseExtRueViewCheckBox" Header="Rue (autre)" IsCheckable="true"/>
<MenuItem Name="adresseExtCPViewCheckBox" Header="Code postal (autre)" IsCheckable="true"/>
<MenuItem Name="adresseExtVilleViewCheckBox" Header="Ville (autre)" IsCheckable="true"/>
<MenuItem Name="mailViewCheckBox" Header="E-Mail" IsCheckable="true"/>
<MenuItem Name="telViewCheckBox" Header="Téléphone" IsCheckable="true"/>
<MenuItem Name="telPortViewCheckBox" Header="Mobile" IsCheckable="true"/>
<MenuItem Name="dateCreationViewCheckBox" Header="Date de création" IsCheckable="true"/>
<MenuItem Name="dateModificationViewCheckBox" Header="Date de modification" IsCheckable="true"/>
</MenuItem> </MenuItem>
<MenuItem Header="Communication"> <MenuItem Header="Communication">
<MenuItem Header="Courriel..."/> <MenuItem Header="Courriel..."/>
@ -34,31 +58,42 @@
<MenuItem Header="Options..." Click="Options_Click"/> <MenuItem Header="Options..." Click="Options_Click"/>
</MenuItem> </MenuItem>
</Menu> </Menu>
<Grid> <WrapPanel Grid.Row="1" Margin="10">
<DataGrid Name="dgCitoyens" AutoGenerateColumns="False" IsReadOnly="True" MouseDoubleClick="DgCitoyen_DoubleClick"> <StackPanel Margin="5">
<Label>Age :</Label>
<WrapPanel>
<ComboBox Name="ageOperationFilter" Width="150" Margin="0,0,5,0">
<ComboBoxItem IsSelected="True">Égal à</ComboBoxItem>
<ComboBoxItem>Supérieur à</ComboBoxItem>
<ComboBoxItem>Inférieur à</ComboBoxItem>
</ComboBox>
<TextBox VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" Width="40"/>
</WrapPanel>
</StackPanel>
</WrapPanel>
<DataGrid Grid.Row="2" VerticalScrollBarVisibility="Visible" GridLinesVisibility="All" Margin="10" Name="dgCitoyens" AutoGenerateColumns="False" IsReadOnly="True" MouseDoubleClick="DgCitoyen_DoubleClick">
<DataGrid.Columns> <DataGrid.Columns>
<DataGridTextColumn Header="Civilité" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Civilite}" Width="*"/> <DataGridTextColumn Header="Civilité" Visibility="{Binding Source={x:Reference civiliteViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Civilite}" Width="*"/>
<DataGridTextColumn Header="Nom" Binding="{Binding Nom}" Width="*"/> <DataGridTextColumn Header="Nom" Visibility="{Binding Source={x:Reference nomViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Nom}" Width="*"/>
<DataGridTextColumn Header="Nom de naissance" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding NomNaissance}" Width="*"/> <DataGridTextColumn Header="Nom de naissance" Visibility="{Binding Source={x:Reference nomNaissanceViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding NomNaissance}" Width="*"/>
<DataGridTextColumn Header="Prénom" Binding="{Binding Prenom}" Width="*"/> <DataGridTextColumn Header="Prénom" Visibility="{Binding Source={x:Reference prenomViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Prenom}" Width="*"/>
<DataGridTextColumn Header="Age" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Age}" Width="*"/> <DataGridTextColumn Header="Age" Visibility="{Binding Source={x:Reference ageViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Age}" Width="*"/>
<DataGridTextColumn Header="Profession" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Profession}" Width="*"/> <DataGridTextColumn Header="Profession" Visibility="{Binding Source={x:Reference professionViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Profession}" Width="*"/>
<DataGridTextColumn Header="Résidence" Binding="{Binding TypeResidenceLabel}" Width="*"/> <DataGridTextColumn Header="Résidence" Visibility="{Binding Source={x:Reference typeResidenceViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding TypeResidenceLabel}" Width="*"/>
<DataGridTextColumn Header="Quartier" Binding="{Binding Quartier}" Width="*"/> <DataGridTextColumn Header="Quartier" Visibility="{Binding Source={x:Reference quartierViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Quartier}" Width="*"/>
<DataGridTextColumn Header="Numéro de rue (locale)" Binding="{Binding AdresseNumero}" Width="*"/> <DataGridTextColumn Header="Numéro de rue" Visibility="{Binding Source={x:Reference adresseNumeroViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseNumero}" Width="*"/>
<DataGridTextColumn Header="Rue (locale)" Binding="{Binding AdresseRue}" Width="*"/> <DataGridTextColumn Header="Rue" Visibility="{Binding Source={x:Reference adresseRueViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseRue}" Width="*"/>
<DataGridTextColumn Header="Bâtiment" Binding="{Binding AdresseBatiment}" Width="*"/> <DataGridTextColumn Header="Bâtiment" Visibility="{Binding Source={x:Reference adresseBatimentViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseBatiment}" Width="*"/>
<DataGridTextColumn Header="Numéro de rue" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtNumero}" Width="*"/> <DataGridTextColumn Header="Numéro de rue (autre)" Visibility="{Binding Source={x:Reference adresseExtNumeroViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtNumero}" Width="*"/>
<DataGridTextColumn Header="Rue" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtRue}" Width="*"/> <DataGridTextColumn Header="Rue (autre)" Visibility="{Binding Source={x:Reference adresseExtRueViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtRue}" Width="*"/>
<DataGridTextColumn Header="Code postal" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtCP}" Width="*"/> <DataGridTextColumn Header="Code postal (autre)" Visibility="{Binding Source={x:Reference adresseExtCPViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtCP}" Width="*"/>
<DataGridTextColumn Header="Ville" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtVille}" Width="*"/> <DataGridTextColumn Header="Ville" Visibility="{Binding Source={x:Reference adresseExtVilleViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding AdresseExtVille}" Width="*"/>
<DataGridTextColumn Header="E-Mail" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Mail}" Width="*"/> <DataGridTextColumn Header="E-Mail" Visibility="{Binding Source={x:Reference mailViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Mail}" Width="*"/>
<DataGridTextColumn Header="Téléphone" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Tel}" Width="*"/> <DataGridTextColumn Header="Téléphone" Visibility="{Binding Source={x:Reference telViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding Tel}" Width="*"/>
<DataGridTextColumn Header="Mobile" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding TelPort}" Width="*"/> <DataGridTextColumn Header="Mobile" Visibility="{Binding Source={x:Reference telPortViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding TelPort}" Width="*"/>
<DataGridTextColumn Header="Date de création" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding DateCreation}" Width="*"/> <DataGridTextColumn Header="Date de création" Visibility="{Binding Source={x:Reference dateCreationViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding DateCreation, StringFormat='dd-MM-yyyy HH:mm'}" Width="*"/>
<DataGridTextColumn Header="Date de modification" Visibility="{Binding Source={x:Reference completeViewCheckbox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding DateModification}" Width="*"/> <DataGridTextColumn Header="Date de modification" Visibility="{Binding Source={x:Reference dateModificationViewCheckBox}, Path=IsChecked, Converter={StaticResource Bool2VisibilityConv}}" Binding="{Binding DateModification, StringFormat='dd-MM-yyyy HH:mm'}" Width="*"/>
</DataGrid.Columns> </DataGrid.Columns>
</DataGrid> </DataGrid>
</Grid> </Grid>
</StackPanel>
</Window> </Window>

View File

@ -11,8 +11,11 @@
WindowStartupLocation="CenterOwner" WindowStartupLocation="CenterOwner"
Closing="Window_Closing"> Closing="Window_Closing">
<Grid> <Grid>
<StackPanel> <Grid.RowDefinitions>
<TabControl Margin="5,5,5,5" MinHeight="160"> <RowDefinition Height="160"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TabControl Grid.Row="0" Margin="5,5,5,0">
<TabItem Header="Général"> <TabItem Header="Général">
<StackPanel Margin="5,5,5,5" VerticalAlignment="Top"> <StackPanel Margin="5,5,5,5" VerticalAlignment="Top">
<Label>Code postal :</Label> <Label>Code postal :</Label>
@ -28,9 +31,8 @@
</StackPanel> </StackPanel>
</TabItem> </TabItem>
</TabControl> </TabControl>
</StackPanel> <WrapPanel Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0,0,5,0">
<WrapPanel HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="10,10,10,10"> <Button Height="25" Margin="0,0,10,0" Width="100" IsDefault="True">Enregister</Button>
<Button Height="25" Margin="0,0,10,0" Width="100">Enregister</Button>
<Button Height="25" Width="100">Annuler</Button> <Button Height="25" Width="100">Annuler</Button>
</WrapPanel> </WrapPanel>
</Grid> </Grid>