Hi,
I've got a little problem with grid virtualization. I've got this grid view:
Xavier.
I've got a little problem with grid virtualization. I've got this grid view:
<telerik:RadGridView Name="mailRecipients" |
Grid.Row="0" |
ItemsSource="{Binding ElementName=departmentMailRecipients, Path=MailRecipients}" |
ActionOnLostFocus="CommitEdit" |
AutoGenerateColumns="False" |
ColumnsWidthMode="Auto" |
ShowGroupPanel="False" |
Sorting="MailRecipients_Sorting" |
PreviewKeyDown="MailRecipients_PreviewKeyDown" |
telerik:GridViewCell.IsEditorVisibleChanged="MailRecipients_IsEditorVisibleChanged"> |
<telerik:RadGridView.Columns> |
<!-- Department column --> |
<telerik:GridViewDataColumn DataMemberPath="Department" |
CellStyle="{StaticResource GridViewCellStyle}" |
HeaderText="{x:Static properties:StringResources.Department}" |
IsReadOnly="False" |
IsGroupable="False"> |
<telerik:GridViewDataColumn.EditorSettings> |
<telerik:ComboBoxEditorSettings ItemsSource="{markup:EnumValues {x:Type entities:Department}}" /> |
</telerik:GridViewDataColumn.EditorSettings> |
</telerik:GridViewDataColumn> |
<!-- Mail type column --> |
<telerik:GridViewDataColumn DataMemberPath="MailType" |
CellStyle="{StaticResource GridViewCellStyle}" |
HeaderText="{x:Static properties:StringResources.Type}" |
IsReadOnly="False" |
IsGroupable="False"> |
<telerik:GridViewDataColumn.EditorSettings> |
<telerik:ComboBoxEditorSettings ItemsSource="{markup:EnumValues {x:Type entities:MailType}}" /> |
</telerik:GridViewDataColumn.EditorSettings> |
</telerik:GridViewDataColumn> |
<!-- Address column --> |
<telerik:GridViewDataColumn HeaderText="{x:Static properties:StringResources.Email}" |
CellStyle="{StaticResource GridViewCellStyle}" |
IsReadOnly="False" |
IsGroupable="False"> |
<telerik:GridViewDataColumn.DataMemberBinding> |
<Binding Path="Address" NotifyOnValidationError="True"> |
<Binding.ValidationRules> |
<validationRules:MandatoryRule /> |
<validationRules:EmailRule /> |
</Binding.ValidationRules> |
</Binding> |
</telerik:GridViewDataColumn.DataMemberBinding> |
</telerik:GridViewDataColumn> |
<!-- Delete column --> |
<telerik:GridViewColumn> |
<telerik:GridViewColumn.CellStyle> |
<Style TargetType="{x:Type telerik:GridViewCell}"> |
<Setter Property="Template"> |
<Setter.Value> |
<ControlTemplate TargetType="{x:Type telerik:GridViewCell}"> |
<Border Background="{TemplateBinding Background}" |
BorderBrush="{TemplateBinding BorderBrush}" |
BorderThickness="{TemplateBinding BorderThickness}"> |
<Button Style="{StaticResource GridImageButton}" |
Click="Delete_Click"> |
<Image Source="{StaticResource Delete}" /> |
</Button> |
</Border> |
</ControlTemplate> |
</Setter.Value> |
</Setter> |
</Style> |
</telerik:GridViewColumn.CellStyle> |
</telerik:GridViewColumn> |
</telerik:RadGridView.Columns> |
</telerik:RadGridView> When user delete the content of the address column for the first row (The mandatory rules mark the cell as invalid) then scroll until the last row and rescroll on the first row, the old content is displayed. Is there a way to leave the invalid content of a cell when user scroll down/up? (I know that wrap the grid into a ScrollViewer avoid the virtualization but I prefer find another way, this bug occurs also on Grid with huge amount of data in my application) |
Xavier.