Bonjour,
J'ai un problème d'affichage avec WPF j'ai fait une présentation d'une liste d'objet qui ont eux-même une liste d'un autre objet.
J'ai donc fait un groupe qui contient un en-tête et une liste représenté par 2 labels et une zone de texte saisissable.

Voici le code :
Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
using System.Windows;
 
namespace WpfApp6
{
    /// <summary>
    /// Logique d'interaction pour MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            DataContext = new Group[]
                {
                    new Group
                    {
                        Name = "TestGroup111",
                        Tests = new Test[]
                        {
                            new Test { Name = "Test1", Value = 5, Symbole = "%" },
                            new Test { Name = "Test1Test", Value = 105, Symbole = "mm/s" },
                            new Test { Name = "Test1ff", Value = 15, Symbole = "i" }
                        }
                    },
                    new Group
                    {
                        Name = "TestGroup222",
                        Tests = new Test[]
                        {
                            new Test { Name = "Test2", Value = 25, Symbole = "%" },
                            new Test { Name = "Test2Test", Value = 135, Symbole = "mm/s" },
                            new Test { Name = "Test2ff", Value = 45, Symbole = "i" }
                        }
                    }
                };
        }
    }
 
    public class Group
    {
        public string Name { get; set; }
        public Test[] Tests { get; set; }
    }
 
    public class Test
    {
        public string Name { get; set; }
        public int Value { get; set; }
        public string Symbole { get; set; }
    }
}

Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<Window x:Class="WpfApp6.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:WpfApp6"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
        <DataTemplate x:Key="ListBoxDataTemplate">
            <GroupBox Header="{Binding Name}">
                    <ItemsControl Name="icTodoList" ItemsSource="{Binding Tests}">
                        <ItemsControl.ItemTemplate>
                            <DataTemplate>
                                <Grid Margin="0,0,0,5">
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition/>
                                        <ColumnDefinition/>
                                        <ColumnDefinition/>
                                    </Grid.ColumnDefinitions>
                                    <Label Content="{Binding Name}"/>
                                    <TextBox Grid.Column="1" Text="{Binding Value}"/>
                                    <Label Grid.Column="2" Content="{Binding Symbole}"/>
                                </Grid>
                            </DataTemplate>
                        </ItemsControl.ItemTemplate>
                    </ItemsControl>
            </GroupBox>
        </DataTemplate>
        <ItemsPanelTemplate x:Key="ListBoxItemsPanelTemplate">
            <StackPanel Orientation="Vertical"/>
        </ItemsPanelTemplate>
    </Window.Resources>
    <Grid>
        <ItemsControl Name="Measure"
                      ItemsSource="{Binding}"
                      ItemTemplate="{StaticResource ListBoxDataTemplate}"
                      ItemsPanel="{StaticResource ListBoxItemsPanelTemplate}"
                      VerticalAlignment="Center"/>
    </Grid>
</Window>

Nom : Capture.PNG
Affichages : 742
Taille : 7,4 Ko

Là tout est bon, ça fonctionne, tout est bien aligné joli et tout ça... Mais on me demande de mettre les groupes côte à côte plutôt que l'un sur l'autre.

Pas de soucis réponds-je, il suffit de de changer l'orientation du StackPanel en Horizontal et hop c'est fait...

Sur le fond, c'est fait mais non, voilà la tête des groupes...
Nom : Capture.PNG
Affichages : 700
Taille : 5,7 Ko

Rien n'est aligné comme avant...

Qu'est-ce que j'ai raté ? Et surtout comment faire en sorte que ce soit tout beau tout joli mais cote à cote ???

Merci pour vos idées.

P.S. : Sachant qu'il y aura du multi-langue en dessous et que je ne pourrais pas fixer les tailles à l'avance.