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
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
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.
Vlad
the Telerik team
I can't try today your last release version.
I come to you tomorrow.
Thank you for your response.
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.
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?
Vlad
the Telerik team
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
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...
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
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
Please send us runnable example where we can reproduce this wrong behavior.
Greetings,Vlad
the Telerik team
I wanted but I couldn't attach an zip file.
Ladislav
You can open support ticket.
Kind regards,Vlad
the Telerik team
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
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
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
Can you post an example where our grid will work slower compared to standard Silverlight DataGrid?
Kind regards,Vlad
the Telerik team
I can't attach the zip file.
Nadav
You can open support ticket.
Greetings,Vlad
the Telerik team
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
I don't see any support ticket submitted by you so far.
All the best,Vlad
the Telerik team