Débutant en WPF,
J'essaie de réaliser une combobox qui affiche une liste de clients et que ces clients soient groupés par société sachant que j'ai 2 tables dans ma DB, Client et Société.
Mon problème est de mettre le nom de la société dans l'entête des groupes de la CB sachant que dans la table Client, le champ Société est une clé étrangère.

Voici un résumé du code XAML :

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
    <Window.Resources>
        <ObjectDataProvider x:Key="TestDataSetDS" ObjectType="{x:Type Test_DataBase:TestDataSet}" d:IsDataSource="True"/>
        <CollectionViewSource x:Key="clientView" Source="{Binding Path=Client, Mode=Default}">
            <CollectionViewSource.GroupDescriptions>
                <PropertyGroupDescription PropertyName="Societe"/>
            </CollectionViewSource.GroupDescriptions>
        </CollectionViewSource>
		<DataTemplate x:Key="DataTemplateClient">
			<Grid>
				<Grid.ColumnDefinitions>
					<ColumnDefinition Width="Auto"/>
					<ColumnDefinition Width="Auto"/>
					<ColumnDefinition Width="Auto"/>
				</Grid.ColumnDefinitions>
				<TextBlock Text="{Binding Path=Societe}"/>
				<TextBlock Grid.Column="1" Text="{Binding Path=Nom}"/>
				<TextBlock Grid.Column="2" Text="{Binding Path=Prenom}"/>
			</Grid>
		</DataTemplate>
        
        <DataTemplate x:Key="ClientGroupHeaderTemplate">
            <StackPanel Orientation="Horizontal" TextBlock.FontWeight="Bold" TextBlock.FontSize="20">
                <TextBlock Text="{Binding ???}"/>
            </StackPanel>
        </DataTemplate>
    </Window.Resources>
	
    <Grid>
    	<ComboBox IsSynchronizedWithCurrentItem="True" ItemTemplate="{DynamicResource DataTemplateClient}" ItemsSource="{Binding Source={StaticResource clientView}}" DataContext="{Binding Mode=OneWay}">
            <ComboBox.GroupStyle>
                <GroupStyle HeaderTemplate="{StaticResource ClientGroupHeaderTemplate}"/>
            </ComboBox.GroupStyle>
        </ComboBox>
    </Grid>

Dans le code C# :

Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
TestDataSetTableAdapters.ClientTableAdapter daClient = new TestDataSetTableAdapters.ClientTableAdapter();
            daClient.Fill(ds.Client);
 
TestDataSetTableAdapters.SocieteTableAdapter daSociete = new TestDataSetTableAdapters.SocieteTableAdapter();
            daSociete.Fill(ds.Societe);
 
this.DataContext = ds;

En gros, comment puis-je binder le text du header template pour obtenir le nom de la société qui correspond au client.
Si quelqu'un a une idée !