Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
10 novembre 2009 2 10 /11 /novembre /2009 15:20

Dans un article précédent (voir ici) j’expliquais comment obtenir le comportement d’un RadioButton avec un CheckBox dans un DataGridView en Winform sans créer de contrôle utilisateur personnalisé.

Nous allons voir dans cet article comment obtenir le même résultat en WPF en utilisant uniquement le code XAML.

 

Code XAML :

<my1:DataGrid AutoGenerateColumns="False" Margin="6,82,6,6" Name="DataGridRadioButtonDemo" xmlns:my1="http://schemas.microsoft.com/wpf/2008/toolkit" SelectionMode="Single" SelectionUnit="Cell">
                        <my1:DataGrid.Columns>
                            <my1:DataGridTemplateColumn Header="Selection"  >
                                <my1:DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <RadioButton GroupName="GroupBoxSelection" IsChecked="{Binding Path=maSelection}" HorizontalAlignment="Center"   ></RadioButton>
                                    </DataTemplate>
                                </my1:DataGridTemplateColumn.CellTemplate>
                                <my1:DataGridTemplateColumn.CellEditingTemplate>
                                    <DataTemplate>
                                        <RadioButton GroupName="GroupBoxSelection" IsChecked="{Binding Path=maSelection}" HorizontalAlignment="Center"  ></RadioButton>
                                    </DataTemplate>
                                </my1:DataGridTemplateColumn.CellEditingTemplate>
                            </my1:DataGridTemplateColumn>
                         </my1:DataGrid.Columns>
                    </my1:DataGrid>

 

 

Les RadioButton sont ici lié avec une table ayant un champ “maSelection”. Le faite de mettre tous les RadioButton du DataGrid dans le GroupName “GroupBoxSelection” permet d’obtenir l’effet désiré.

 

ATTENTION :  A cause d’un bug connu de Microsoft depuis la version 3 du framework, les données ne se mettent pas à jour lors du changement Checked/Unchecked des RadioButton. Ce bug semble avoir été corrigé dans la version 4 du framework à venir avec la version 2010 de Visual Studio. J’espère pouvoir fournir bientôt un article expliquant comment contourner ce problème avec la version 3.5 du framework.

Partager cet article

Repost 0
Published by Cyril - dans WPF
commenter cet article

commentaires