This is a migrated thread and some comments may be shown as answers.

Very low performance when my client try to see the last row

20 Answers 103 Views
GridView
This is a migrated thread and some comments may be shown as answers.
Joachim
Top achievements
Rank 1
Joachim asked on 11 Mar 2011, 09:37 AM
Hi Telerik Team !

I'm confronted with a problem of RadGridView's performance.
I have a GridView with a large amount of data (16000 items) and the datas are grouped by four categories.
Each column of the grid view is a GridViewDataColumn with CellTemplate and CellEditTemplate. (you can see an example of my grid on the file attached to this thread)

The grid works well, when the user expand the first group then the first subgroup, ... until the items. The items are loaded very fast and there is no performance porblem.

But, if the user expand the last group, then the last subgroup, then the last... until the items. The grid can take several minutes to show the items !! Even if there is only one item in the subgroup  O_O
It's just unusable for my client.


What i'm doing wrong ? is there a way to avoid this ? 

Thank you for your help on that point. 

Joachim.

20 Answers, 1 is accepted

Sort by
0
Joachim
Top achievements
Rank 1
answered on 16 Mar 2011, 05:11 PM
Do you need more information ?
The key to reproduce this performance issue is to have a lot of data ( > 15000 items) grouped by at least 4 categories and very complex CellTemplate.

Here is my RadGridView column description :

<views:PricingRadGridView.Columns>
    <!-- Select with checkbox column -->
    <telerikGridView:GridViewSelectColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" />
 
    <!-- Toggle row details column -->
    <telerikGridView:GridViewToggleRowDetailsColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="ToggleRowDetails" IsReadOnly="True"
                                                    ToggleButtonStyle="{StaticResource MagnifierGridViewToogleButton}"/>
 
    <!-- Campagne Année column -->
    <viewsControl:HideableGridViewDataColumn HideableColumnName="Campagne" HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="CampagneAnnee"
                                                Header="Campagne" DataMemberBinding="{Binding CampagneAnnee}" IsReadOnly="True" IsVisible="False"
                                                GroupHeaderTemplate="{StaticResource CampagneGroupHeaderTemplate}" CellStyle="{StaticResource CampagenAnneeCell}" />
 
    <!-- Groupe client column -->
    <viewsControl:HideableGridViewDataColumn HideableColumnName="Type Client" HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="GroupeClientNom"
                                            Header="Type Client" DataMemberBinding="{Binding GroupeClientNom}" IsReadOnly="True" IsVisible="False"
                                            GroupHeaderTemplate="{StaticResource GroupCustomerGroupHeaderTemplate}" CellStyle="{StaticResource GroupeClientCell}" />
 
    <!-- Article column -->
    <viewsControl:HideableGridViewDataColumn HideableColumnName="Groupe article" HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="GroupeArticleNom"
                                            Header="Groupe article" DataMemberBinding="{Binding GroupeArticleNom}" IsReadOnly="True" IsVisible="False"
                                            GroupHeaderTemplate="{StaticResource GroupeArticleHeaderTemplate}" CellStyle="{StaticResource GroupeArticleCell}" />
 
    <!-- Client column -->
    <viewsControl:HideableGridViewDataColumn HideableColumnName="Client" HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="ClientNom"
                                            Header="Client" DataMemberBinding="{Binding ClientNom}" IsReadOnly="True" IsVisible="False"
                                            GroupHeaderTemplate="{StaticResource CustomerGroupHeaderTemplate}" CellStyle="{StaticResource ClientCell}" />
 
    <!-- SegmentMarche column -->
    <viewsControl:HideableGridViewDataColumn HideableColumnName="Segment de marché" HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="SegmentMarcheNom"
                                            Header="Segment Marché" DataMemberBinding="{Binding SegmentMarcheNom}" IsReadOnly="True" IsVisible="False"
                                            GroupHeaderTemplate="{StaticResource SegmentMarcheGroupHeaderTemplate}" CellStyle="{StaticResource SegmentMarcheCell}"/>
 
    <!-- Portefeuille ventes nom-->
    <viewsControl:HideableGridViewDataColumn DataMemberBinding="{Binding PortefeuilleVenteNom}" UniqueName="PortefeuilleVenteNom"
                                                GroupHeaderTemplate="{StaticResource PortefeuilleVenteGroupHeaderTemplate}"
                                                HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}"
                                                CellStyle="{StaticResource PortefeuilleVenteCell}"
                                                IsVisible="False" IsReadOnly="True" Header="Portefeuille"
                                                HideableColumnName="Portefeuille"/>
 
    <!-- Activite & Etat column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" UniqueName="EtatId"
                                        Header="E" IsReadOnly="True" IsFilterable="False" IsSortable="False">
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <views:ActiveViewControl Grid.Row="1" ActiveBrush="{Binding Activite, Converter={StaticResource ByteToActiveBrushConverter}}" />
                    <TextBlock Grid.Row="2" Text="{Binding EtatId}" Foreground="Maroon" FontWeight="Bold" TextAlignment="Center" />
                    <Image Grid.Row="3" Source="/SilverlightPricing;component/Images/run.png"
                            Visibility="{Binding CreationAutomatique, Converter={StaticResource VisibilityConverter}}"
                            ToolTipService.ToolTip="Simulation générée de manière automatique" Margin="0,3,0,0"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Actions column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="24"
                                        IsReadOnly="True" IsGroupable="False" UniqueName="Actions" IsVisible="False" IsFilterable="False">
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <telerik:RadButton Grid.Row="1" Grid.Column="0" Click="btnEdit_Click" Visibility="{Binding CanEdit, Converter={StaticResource BooleanToVisibilityConverter}}"
                                        x:Name="btnEdit" Template="{StaticResource EditButtonTemplate}" />
                    <telerik:RadButton Grid.Row="1" Grid.Column="0" x:Name="btnDuplicate" Visibility="{Binding CanDuplicate, Converter={StaticResource BooleanToVisibilityConverter}}"
                                        Click="btnDuplicate_Click" Template="{StaticResource DuplicateButtonTemplate}" />
                    <telerik:RadButton Grid.Row="1" Grid.Column="0" Click="btnCancel_Click"
                                        x:Name="btnCancel" Visibility="{Binding IsEditing, Converter={StaticResource BooleanToVisibilityConverter}}"
                                        Template="{StaticResource CancelButtonTemplate}" />
                    <telerik:RadButton Grid.Row="2" Grid.Column="0" x:Name="btnAccept" Visibility="{Binding CanAccept, Converter={StaticResource BooleanToVisibilityConverter}}"
                                        Click="btnAccept_Click" Template="{StaticResource AcceptButtonTemplate}" />
                    <telerik:RadButton Grid.Row="2" Grid.Column="0" Click="btnSave_Click"
                                        x:Name="btnSave" Visibility="{Binding Path=Visibility, ElementName=btnCancel}"
                                        Template="{StaticResource SaveButtonTemplate}" />
                    <telerik:RadButton Grid.Row="2" Grid.Column="0" x:Name="btnSendToValidation"
                                        Click="btnSendToValidation_Click" Template="{StaticResource SendToValidationButtonTemplate}"
                                        Visibility="{Binding CanSendToValidation, Converter={StaticResource BooleanToVisibilityConverter}}" />
                    <telerik:RadButton Grid.Row="3" Grid.Column="0" x:Name="btnReject"
                                        Click="btnReject_Click"
                                        Visibility="{Binding Visibility, ElementName=btnAccept}"
                                        Template="{StaticResource RejectButtonTemplate}" />
                    <viewsControl:EditCommentButton Grid.Row="4"  x:Name="btnEditComment"
                                        Visibility="{Binding CanEditComment, Converter={StaticResource BooleanToVisibilityConverter}}"
                                        Margin="0,3,0,0" MouseLeftButtonDown="btnEditComment_Click" Comment="{Binding Commentaire}"/>
 
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- GroupeArticle column -->
    <!--                    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="100" HeaderTextAlignment="Center" Header="Groupe Article"
                                        DataMemberBinding="{Binding GroupeArticleNom}" IsReadOnly="True" IsGroupable="True" > -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="100" HeaderTextAlignment="Center" IsReadOnly="True" IsGroupable="False">
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding GroupeArticleNom}" FontWeight="SemiBold" Foreground="Red" TextWrapping="Wrap"/>
                    <TextBlock Grid.Column="0" Grid.Row="1" Text="Réalisé n-1" Foreground="Gray"/>
                    <TextBlock Grid.Column="0" Grid.Row="2" Text="Objectif n" Foreground="Gray" />
                    <TextBlock Grid.Column="0" Grid.Row="3" Text="Conditionnel" Foreground="Gray" />
                    <TextBlock Grid.Column="0" Grid.Row="4" Text="Prévisionnel" Foreground="Gray" />
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- QuantiteObjectif column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource PrixCalculeColumnWidth}" IsGroupable="False"
                                        Header="Qte" IsReadOnly="False" DataMemberBinding="{Binding QuantiteObjectif}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentBorderStyle}">
                        <TextBlock Text="{Binding QteRealiseN_1, StringFormat='{}{0:#}'}" TextAlignment="Center" FontWeight="Bold"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding QuantiteObjectif}" TextAlignment="Center" FontWeight="Bold" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <TextBox Grid.Column="0" Grid.Row="2" x:Name="txtQuantiteObjectif" Text="{Binding QuantiteObjectif, Mode=TwoWay, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" FontWeight="Bold"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- PrixBase column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource PrixCalculeColumnWidth}"
                                        IsReadOnly="True" IsGroupable="False" IsFilterable="False"
                                        ToolTipTemplate="{StaticResource CommentaireToolTip}">
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Prix Base" TextWrapping="Wrap" />
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource PrixCalculeCampagnePrecedenteBorderStyle}">
                        <TextBlock  Text="{Binding PrixBaseN_1, StringFormat='{}{0:N2}'}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource PrixCalculeObjectifBorderStyle}">
                        <TextBlock  Text="{Binding PrixBase, StringFormat='{}{0:N2}'}" Foreground="White" TextAlignment="Center"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Re1 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}" UniqueName="Re1"
                                        Header="Re1" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Re1Simu}" ToolTipTemplate="{StaticResource Re1ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentLeftSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifLeftSpanBorderStyle}">
                        <TextBlock Text="{Binding Re1Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" x:Name="txtRe1Simu" Text="{Binding Re1Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Re1ToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Re2 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}" UniqueName="Re2"
                                        Header="Re2" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Re2Simu}" ToolTipTemplate="{StaticResource Re2ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock  Text="{Binding Re2Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" x:Name="txtRe2Simu" Text="{Binding Re2Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Re2ToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Re3 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Re3" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Re3Simu}" ToolTipTemplate="{StaticResource Re3ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}">
                        <TextBlock Text="{Binding RemiseMoyenneN_1, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Re3Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" x:Name="txtRe3Simu" Text="{Binding Re3Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Re3ToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Re4 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Re4" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Re4Simu}" ToolTipTemplate="{StaticResource Re4ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Re4Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" x:Name="txtRe4Simu" Text="{Binding Re4Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Re4ToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Re5 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Re5" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Re5Simu}" ToolTipTemplate="{StaticResource Re5ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentRightSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Re5Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" x:Name="txtRe5Simu" Text="{Binding Re5Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Re5ToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Prix remisé column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource PrixCalculeColumnWidth}"
                                                IsGroupable="False" IsFilterable="False" UniqueName="PrixRemise" >
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Prix Remisé" TextWrapping="Wrap" TextAlignment="Center" />
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource PrixCalculeCampagnePrecedenteBorderStyle}">
                        <TextBlock Text="{Binding PrixRemiseN_1}" Foreground="White" TextAlignment="Center"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource PrixCalculeObjectifBorderStyle}">
                        <TextBlock Text="{Binding PrixRemise}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource PrixCalculeConditionnelBorderStyle}">
                        <TextBlock Text="{Binding PrixRemise}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrixCalculePrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding PrixRemise}" Foreground="White" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Ri1 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Ri1" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri1Simu}" UniqueName="Ri1" ToolTipTemplate="{StaticResource Ri1ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentLeftSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifLeftSpanBorderStyle}">
                        <TextBlock Text="{Binding Ri1Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelLeftSpanBorderStyle}">
                        <TextBlock Text="{Binding Ri1Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelLeftSpanBorderStyle}">
                        <TextBlock Text="{Binding Ri1Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri1Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri1SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri1Cond, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri1CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri1Prev, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri1PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}" />
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Ri2 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Ri2" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri2Simu}" UniqueName="Ri2" ToolTipTemplate="{StaticResource Ri2ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Ri2Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri2Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri2Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri2Simu, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri2SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}" />
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri2Cond, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri2CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri2Prev, Mode=TwoWay, Converter={StaticResource FormatConverter}, StringFormat='{}{0:N2}', ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri2PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Ri3 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Ri3" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri3Simu}" UniqueName="Ri3" ToolTipTemplate="{StaticResource Ri3ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Ri3Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri3Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri3Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri3Simu, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri3SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}" />
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri3Cond, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri3CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}" />
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri3Prev, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri3PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Ri4 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Ri4" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri4Simu}" UniqueName="Ri4" ToolTipTemplate="{StaticResource Ri4ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}">
                        <TextBlock Text="{Binding RistourneMoyenneN_1}" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Ri4Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri4Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri4Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri4Simu, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri4SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri4Cond, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri4CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri4Prev, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri4PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Ri5 column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="Ri5" IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri5Simu}" UniqueName="Ri5" ToolTipTemplate="{StaticResource Ri5ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Ri5Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri5Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri5Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri5Simu, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri5SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri5Cond, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri5CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri5Prev, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri5PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Ri Achat column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding Ri6Simu}" UniqueName="Ri6" ToolTipTemplate="{StaticResource Ri6ToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.Header>
            <TextBlock Text="Ri C. Achat" TextAlignment="Center" TextWrapping="Wrap" />
        </telerikGridView:GridViewDataColumn.Header>
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentRightSpanBorderStyle}" />
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding Ri6Simu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri6Cond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Ri6Prev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding Ri6Simu, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri6SimuToolTip}" ToolTipVerticalOffset="{StaticResource RistourneToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="3" Text="{Binding Ri6Cond, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri6CondToolTip}" ToolTipVerticalOffset="{StaticResource ConditionnelToolTipVerticalOffset}"/>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="4" Text="{Binding Ri6Prev, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource Ri6PrevToolTip}" ToolTipVerticalOffset="{StaticResource PrevisionnelToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- CE column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        Header="CE" IsReadOnly="True" IsGroupable="False" IsFilterable="False">
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentBorderStyle}">
                        <TextBlock Text="{Binding CEN_1, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding CESimu, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource ConditionnelBorderStyle}">
                        <TextBlock Text="{Binding CECond, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding CEPrev, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Prix R&R column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource PrixCalculeColumnWidth}"
                                        IsReadOnly="True" IsGroupable="False" IsFilterable="False" UniqueName="PrixRemiseRistourne">
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Prix R&R" TextWrapping="Wrap" TextAlignment="Center" />
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource PrixCalculeCampagnePrecedenteBorderStyle}">
                        <TextBlock Text="{Binding PrixRRN_1}" Foreground="White" TextAlignment="Center"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource PrixCalculeObjectifBorderStyle}">
                        <TextBlock Text="{Binding PrixRemiseRistourne}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource PrixCalculeConditionnelBorderStyle}">
                        <TextBlock Text="{Binding PrixRemiseRistourneCond}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrixCalculePrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding PrixRemiseRistournePrev}" Foreground="White" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Infla R&R column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource FixedColumnWidth}"
                                        IsReadOnly="True" IsGroupable="False" IsFilterable="False" ToolTipTemplate="{StaticResource Infla1ToolTip}">
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Infla R&R" TextWrapping="Wrap" TextAlignment="Center" />
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource InflaBorderStyle}">
                        <TextBlock Text="{Binding InflaRemiseRistourneN_1}" TextAlignment="Center" FontWeight="Bold"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource InflaBorderStyle}">
                        <TextBlock Text="{Binding InflaRemiseRistourne}" TextAlignment="Center" FontWeight="Bold"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- ACPP groupe column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding ACPPGroupe}" ToolTipTemplate="{StaticResource ACPPToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.Header>
            <TextBlock Text="Acpp G/CL" TextWrapping="Wrap" TextAlignment="Center"/>
        </telerikGridView:GridViewDataColumn.Header>
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentLeftSpanBorderStyle}"/>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifLeftSpanBorderStyle}">
                        <TextBlock Text="{Binding ACPPGroupe, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox IsReadOnly="{Binding CanNotEditACCPGroup}" Grid.Column="0" Grid.Row="2" Text="{Binding ACPPGroupe, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource ACPPToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- ACPP base column -->
    <telerikGridView:GridViewDataColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource RemiseRistourneColumnWidth}"
                                        IsReadOnly="False" IsGroupable="False" DataMemberBinding="{Binding ACPPBase}" ToolTipTemplate="{StaticResource ACPPToolTip}" IsFilterable="False">
        <telerikGridView:GridViewDataColumn.Header>
            <TextBlock Text="Acpp Affi" TextWrapping="Wrap" TextAlignment="Center" />
        </telerikGridView:GridViewDataColumn.Header>
        <telerikGridView:GridViewDataColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource RealisePrecedentRightSpanBorderStyle}">
                        <TextBlock Text="{Binding ACPPN_1, StringFormat='{}{0:N2}'}" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource ObjectifBorderStyle}">
                        <TextBlock Text="{Binding ACPPBase, StringFormat='{}{0:N2}'}" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellTemplate>
        <telerikGridView:GridViewDataColumn.CellEditTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <local:ShowToolTipOnFocusTextBox Grid.Column="0" Grid.Row="2" Text="{Binding ACPPBase, StringFormat='{}{0:N2}', Mode=TwoWay, Converter={StaticResource FormatConverter}, ValidatesOnExceptions=True, NotifyOnValidationError=True}" TextAlignment="Center" ToolTipContent="{Binding}" ToolTipContentTemplate="{StaticResource ACPPToolTip}" ToolTipVerticalOffset="{StaticResource RemiseToolTipVerticalOffset}"/>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewDataColumn.CellEditTemplate>
    </telerikGridView:GridViewDataColumn>
 
    <!-- Prix 3bis column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource PrixCalculeColumnWidth}"
                                        IsReadOnly="True" IsGroupable="False" IsFilterable="False" ToolTipTemplate="{StaticResource SeuilToolTip}">
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Prix 3bis" TextWrapping="Wrap" />
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="1" Style="{StaticResource PrixCalculeCampagnePrecedenteBorderStyle}">
                        <TextBlock Text="{Binding Prix3bisN_1}" Foreground="White" TextAlignment="Center"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource PrixCalculeObjectifBorderStyle}">
                        <TextBlock Text="{Binding Prix3bis}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="3" Style="{StaticResource PrixCalculeConditionnelBorderStyle}">
                        <TextBlock Text="{Binding Prix3bisCond}" Foreground="White" TextAlignment="Center" />
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource PrixCalculePrevisionnelBorderStyle}">
                        <TextBlock Text="{Binding Prix3bisPrev}" Foreground="White" TextAlignment="Center" />
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
    <!-- Infla 3 bis column -->
    <telerikGridView:GridViewColumn HeaderCellStyle="{StaticResource GridViewHeaderCellStyle}" Width="{StaticResource FixedColumnWidth}"
                                        IsReadOnly="True" IsGroupable="False" IsFilterable="False" ToolTipTemplate="{StaticResource Infla2ToolTip}">
        <telerikGridView:GridViewColumn.Header>
            <TextBlock Text="Infla 3bis" TextWrapping="Wrap" TextAlignment="Center"/>
        </telerikGridView:GridViewColumn.Header>
        <telerikGridView:GridViewColumn.CellTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="{StaticResource EmptyRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                        <RowDefinition Height="{StaticResource InnerRowHeight}" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="{StaticResource InnerRowWidth}" />
                    </Grid.ColumnDefinitions>
                    <Border Grid.Column="0" Grid.Row="2" Style="{StaticResource InflaBorderStyle}">
                        <TextBlock Text="{Binding Infla3bisN_1}" TextAlignment="Center" FontWeight="Bold"/>
                    </Border>
                    <Border Grid.Column="0" Grid.Row="4" Style="{StaticResource InflaBorderStyle}">
                        <TextBlock Text="{Binding Infla3bis}" TextAlignment="Center" FontWeight="Bold"/>
                    </Border>
                </Grid>
            </DataTemplate>
        </telerikGridView:GridViewColumn.CellTemplate>
    </telerikGridView:GridViewColumn>
 
</views:PricingRadGridView.Columns>

I hope this can help you to help me.

Thank you guys.

Joachim
0
Vlad
Telerik team
answered on 17 Mar 2011, 09:39 AM
Hello,

 Sorry for the late reply!

Can you post more info about the grid version? Have you tried our just released Q1 2011? We believe that we've managed to provide various optimizations with our latest release which may help in your scenario as well. 

Kind regards,
Vlad
the Telerik team
0
Joachim
Top achievements
Rank 1
answered on 17 Mar 2011, 10:10 AM
The grid version is : 2010.3.1507
I can't try today your last release version.
I come to you tomorrow.

Thank you for your response. 
0
Joachim
Top achievements
Rank 1
answered on 18 Mar 2011, 12:19 PM
I tried your last release (Q1 2011)...
I am very disappointed... :/ 
When i want to expand one item under a subgroup (the 16000 items in the grid are grouped by 4 categories) it takes more than 1 min...
When i want to commit a row in edit mode it take more than 2 minutes...

The GridView is unusable for my client.

0
Vlad
Telerik team
answered on 18 Mar 2011, 01:05 PM
Hello Joachim,

 I'm sorry to hear that you have such problems.

Can you send us runnable example demonstrating your scenario where we can reproduce and debug this slowness?

Best wishes,
Vlad
the Telerik team
0
Ladislav
Top achievements
Rank 1
answered on 18 Mar 2011, 08:09 PM
Hi
I can confirm the problems with grouping. The grid is really slow. Especially with custom DataTemplate (converts ints to images MVVM like) with image in in. We have only 200 rows. Now I will probably need to find an another grid. And justify our current 6 telerik licenses.

We have also not reproducible crashes caused probably by grids async processing.

Scrolling with arrow keys is slow, but jump to some last groups freezes the grid and it even doesn't repaint itself - click on scrollbar.

Regards,
Ladislav
0
Joachim
Top achievements
Rank 1
answered on 21 Mar 2011, 08:48 AM
Hi Ladislav,

Our Telerik Grid contains also custom DataTemplate with images (visibility is bind to boolean MVVM like).
I can confirm that i have also not reproductibles crashes and repaint problem...
It seems that Telerik grid is not for large amount of data use case but just very simple grid use case.

To bad i did not know earlier...
0
Vlad
Telerik team
answered on 21 Mar 2011, 08:52 AM
Hello,

 Do you have different behavior with standard Silverlight DataGrid with the same templates compared to our Q1 2011 grid? 

Kind regards,
Vlad
the Telerik team
0
Ladislav
Top achievements
Rank 1
answered on 24 Mar 2011, 05:46 PM
Hi,

I think its a big issue in your product. Look at the screenshot. The app was made with Version 2011.1.315.1040.
Please provide a fix.

Regards,
Ladislav
0
Vlad
Telerik team
answered on 25 Mar 2011, 07:57 AM
Hello,

Please send us runnable example where we can reproduce this wrong behavior. 

Greetings,
Vlad
the Telerik team
0
Ladislav
Top achievements
Rank 1
answered on 25 Mar 2011, 08:05 AM
Hi,

I wanted but I couldn't attach an zip file.

Ladislav

0
Vlad
Telerik team
answered on 25 Mar 2011, 08:30 AM
Hi,

 You can open support ticket. 

Kind regards,
Vlad
the Telerik team
0
Nadav
Top achievements
Rank 1
answered on 03 Apr 2011, 12:43 PM
I also have a problem with the performance of the Telerik GridView.

I've got a very simple test program:

RadTabControl with two tabs, one holding a RadGridView and the other the Silverlight DataGrid.

The grids are bound to an array of 200 elements, each is a simple class with 11 string properties,
The GridView/DataGrid is set to autogenerate the columns, there are NO templates or styles apllied.

Sorting the the DataGrid is almost instantanious, while sorting the Telerik GridView has a noticable delay (the time between the Sorting/Sorted events is around 150 ms but it fills a lot longer).
Every thing I do on the GridView has this delay (sorting/filtering/grouping).

Also, I've noticed that the long delay happens AFTER the busy indicator disappears, I click on the column header, the busy indicator appears and disappears very fast and then a second or so later the GridView is updated.

It as if the busy indicator appears while the GridView is sorting the elements, but there is some thing that delays the actual updating of the GridView.

I've made sure that the problem is not with the row/column virtualization settings but disabling them and seems that it takes alot longer..

Your GridView is very nice and has alot of options, but the performance is so bad that we will probably change to use the DataGrid and find another way to do the filtering&grouping.
Our customers will be willing to accept a delay of several seconds when working with large number of rows, but a 1 second delay for sorting 30 rows is not acceptable...

Thanks,

Nadav
Nadav
0
Vlad
Telerik team
answered on 05 Apr 2011, 06:23 AM
Hello,

 What's your grid version? You can check this blog post for more info about RadGridView vs. DataGrid for both SIlverlight and WPF. 

All the best,
Vlad
the Telerik team
0
Nadav
Top achievements
Rank 1
answered on 05 Apr 2011, 08:10 AM
Hi Vlad,

I've just updated the test application to work with 2011_1_0315_Trial_hotfix (downloaded automatically by the telerik vs2010 extension) and there is no change in the performance.

The blog post and all other resources I've found talk about performance with 1 million lines and there the performance is good, the problem is that the performance is NOT good for small number of lines.

It's like the delay is made of two parts, one that is dependant of the number of lines in the grid and that part has very good performance and the other part is dependant on the number of lines actually VISIBLE (the lines that are not virtualized) and that part has low performance.

Right now, We've changed our application to work with DataGrid because of the performance issues...

Thanks,
Nadav
0
Vlad
Telerik team
answered on 05 Apr 2011, 08:18 AM
Hi ,

 Can you post an example where our grid will work slower compared to standard Silverlight DataGrid?

Kind regards,
Vlad
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Nadav
Top achievements
Rank 1
answered on 05 Apr 2011, 09:30 AM
Hi Vlad,

I can't attach the zip file.

Nadav
0
Vlad
Telerik team
answered on 05 Apr 2011, 10:45 AM
Hi,

 You can open support ticket.

Greetings,
Vlad
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Nadav
Top achievements
Rank 1
answered on 05 Apr 2011, 10:53 AM
Ok, I've attached a simple application:

Two GridView, first with 30 rows, the second with 1000 row & one DataGrid with 1000 rows.

If you click on the header of the GridView to sort there is a noticable delay AFTER the busy indicator disappears.
Sorting the DataGrid happens very fast.

Nadav
0
Vlad
Telerik team
answered on 05 Apr 2011, 10:59 AM
Hello,

 I don't see any support ticket submitted by you so far.

All the best,
Vlad
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
Tags
GridView
Asked by
Joachim
Top achievements
Rank 1
Answers by
Joachim
Top achievements
Rank 1
Vlad
Telerik team
Ladislav
Top achievements
Rank 1
Ladislav
Top achievements
Rank 1
Nadav
Top achievements
Rank 1
Share this question
or