This question is locked. New answers and comments are not allowed.
I have rad grid view that will show set of properties. when two properties are images, on scrolling the gridview scrollbar, the first image is replaced by the second one
I dont know why this is happening. I have attached the images.
I am using CellStyleSelector for that column. The requirement is I have to use RichTextBox if that content is RichText and if that content ordinary text then i have to use Text Block
This is how I created the CellStyleSelector
And this is how I set the styles in Xaml
And this is how i implemented the RadGrid
How can i avoid the replacement of content?
I dont know why this is happening. I have attached the images.
I am using CellStyleSelector for that column. The requirement is I have to use RichTextBox if that content is RichText and if that content ordinary text then i have to use Text Block
This is how I created the CellStyleSelector
public class PropoertyValueStyleSelector : StyleSelector { public Style RichTextStyle { get; set; } public Style TextBlockStyle { get; set; } public override Style SelectStyle(object item, DependencyObject container) { var PropertyDetails = item as PropertyDetails; if (PropertyDetails != null && PropertyDetails.dataType == "RICHTEXT" && PropertyDetails.HasRichTextFormatting) { return this.RichTextStyle; } else { return this.TextBlockStyle; } } }And this is how I set the styles in Xaml
<local:PropoertyValueStyleSelector x:Key="properyValueStyle"> <local:PropoertyValueStyleSelector.RichTextStyle> <Style TargetType="telerik:GridViewCell"> <Setter Property="ContentTemplate"> <Setter.Value> <DataTemplate> <telerik:RadRichTextBox IsSpellCheckingEnabled="False" BorderBrush="{x:Null}" BorderThickness="0" x:Name="richText" IsReadOnly="True" HyperlinkNavigationMode="Click" HorizontalAlignment="Left" VerticalAlignment="Center" HyperlinkClicked="richText_HyperlinkClicked"> <telerik:RadRichTextBox.Resources> <telerikHTML:HtmlDataProvider RichTextBox="{Binding ElementName=richText}" Html="{Binding value}" x:Key="richText"/> </telerik:RadRichTextBox.Resources> </telerik:RadRichTextBox> </DataTemplate> </Setter.Value> </Setter> </Style> </local:PropoertyValueStyleSelector.RichTextStyle> <local:PropoertyValueStyleSelector.TextBlockStyle> <Style TargetType="telerik:GridViewCell"> <Setter Property="ContentTemplate"> <Setter.Value> <DataTemplate> <TextBlock FontWeight="Normal" Text="{Binding value}" HorizontalAlignment="Left" VerticalAlignment="Center" TextWrapping="Wrap"/> </DataTemplate> </Setter.Value> </Setter> </Style> </local:PropoertyValueStyleSelector.TextBlockStyle> </local:PropoertyValueStyleSelector>And this is how i implemented the RadGrid
<telerik:RadGridView x:Name="newGrdDetails" ShowColumnHeaders="False" AutoGenerateColumns="False" ShowGroupPanel="False" ScrollViewer.HorizontalScrollBarVisibility="Hidden" ScrollViewer.VerticalScrollBarVisibility="Auto" IsFilteringAllowed="False" RowIndicatorVisibility="Collapsed" Padding="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Row="2" Grid.ColumnSpan="2" BorderThickness="1" BorderBrush="Gray" SelectionUnit="Cell" SelectionMode="Extended" CanUserFreezeColumns="False"> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn IsReadOnly="True" UniqueName="PropertyName" DataMemberBinding="{Binding name}" Width="200" TextWrapping="Wrap" > <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding name}" Width ="Auto" VerticalAlignment="Top" TextWrapping="Wrap"> <ToolTipService.ToolTip> <TextBlock Text="{Binding description}" TextWrapping="Wrap" MaxWidth="400"/> </ToolTipService.ToolTip> </TextBlock> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> </telerik:GridViewDataColumn> <telerik:GridViewDataColumn x:Name="value" IsReadOnly="True" UniqueName="PropertyValue" DataMemberBinding="{Binding values}" TextWrapping="Wrap" CellStyleSelector="{StaticResource properyValueStyle}" > </telerik:GridViewDataColumn> </telerik:RadGridView.Columns> </telerik:RadGridView>How can i avoid the replacement of content?