Hi
For some reason i only able to work with the .NET 3.5 Version of Telerik-Controls.
I'm having a hard time trying to Change the Color of the SelectedItem in a TreeView.
I tried using your sample from another post here. But since the control template used there uses VisualStates, i cannot use it in .NET 3.5.
I have this control:
<UserControl x:Class="My.Controls.Views.TreeView" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" xmlns:windows="clr-namespace:Telerik.Windows;assembly=Telerik.Windows.Controls" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300" Name="TreeControlView"> <UserControl.Resources> <Style TargetType="ToggleButton" x:Key="Expander"> <Setter Property="IsTabStop" Value="False" /> <Setter Property="Cursor" Value="Hand" /> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type ToggleButton}"> <ControlTemplate.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Trigger.EnterActions> <BeginStoryboard> <Storyboard> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="Button" Storyboard.TargetProperty="Opacity" To="0" /> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="ButtonOver" Storyboard.TargetProperty="Opacity" To="1" /> </Storyboard> </BeginStoryboard> </Trigger.EnterActions> </Trigger> <Trigger Property="IsChecked" Value="True"> <Trigger.EnterActions> <BeginStoryboard> <Storyboard> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="CollapsedVisual" Storyboard.TargetProperty="Opacity" To="0" /> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="CollapsedVisualOver" Storyboard.TargetProperty="Opacity" To="0" /> </Storyboard> </BeginStoryboard> </Trigger.EnterActions> <Trigger.ExitActions> <BeginStoryboard> <Storyboard> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="CollapsedVisual" Storyboard.TargetProperty="Opacity" To="1" /> <DoubleAnimation Duration="0:0:0.05" Storyboard.TargetName="CollapsedVisualOver" Storyboard.TargetProperty="Opacity" To="1" /> </Storyboard> </BeginStoryboard> </Trigger.ExitActions> </Trigger> </ControlTemplate.Triggers> <Grid> <Grid x:Name="Button" Margin="0,7,4,0" HorizontalAlignment="Right" VerticalAlignment="Top" Width="11" Height="11"> <Grid.Background> <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#3F047BA5" Offset="0.996" /> <GradientStop Color="#00000000" Offset="0" /> </LinearGradientBrush> </Grid.Background> <Rectangle Stroke="#FF000000" HorizontalAlignment="Left" VerticalAlignment="Top" Width="11" Height="11" /> <Rectangle x:Name="CollapsedVisual" Fill="#FF000000" HorizontalAlignment="Left" VerticalAlignment="Top" Width="1" Height="5" Margin="5,3,0,0" /> <Rectangle Fill="#FF000000" VerticalAlignment="Top" HorizontalAlignment="Left" Height="1" Width="5" Margin="3,5,0,0" /> </Grid> <Grid x:Name="ButtonOver" Margin="0,7,4,0" HorizontalAlignment="Right" VerticalAlignment="Top" Width="11" Height="11"> <Rectangle Stroke="#FF167497" HorizontalAlignment="Left" VerticalAlignment="Top" Width="11" Height="11"> <Rectangle.Fill> <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#26167497" Offset="1" /> <GradientStop Color="#00167497" Offset="0" /> </LinearGradientBrush> </Rectangle.Fill> </Rectangle> <Rectangle x:Name="CollapsedVisualOver" Fill="#FF167497" HorizontalAlignment="Left" VerticalAlignment="Top" Width="1" Height="5" Margin="5,3,0,0" /> <Rectangle Fill="#FF167497" VerticalAlignment="Top" HorizontalAlignment="Left" Height="1" Width="5" Margin="3,5,0,0" /> </Grid> </Grid> </ControlTemplate> </Setter.Value> </Setter> </Style> </UserControl.Resources> <telerik:RadTreeView x:Name="BaseTreeView" telerik:TextSearch.TextPath="Header" ExpanderStyle="{StaticResource Expander}" IsLoadOnDemandEnabled="False" IsVirtualizing="True" telerik:TreeViewPanel.IsVirtualizing="True" telerik:TreeViewPanel.VirtualizationMode="Hierarchical" telerik:AnimationManager.IsAnimationEnabled="False" ItemDoubleClick="BaseTreeView_ItemDoubleClick" > <telerik:RadTreeView.ContextMenu> <ContextMenu Name="_treeViewContextMenu"> <MenuItem Header="Expand All" Click="ContextMenuExpandAll" /> <MenuItem Header="Collapse All" Click="ContextMenuCollapseAll" /> <Separator x:Name="_expandCollapseSeparator" x:FieldModifier="private" Visibility="Collapsed" /> <MenuItem x:Name="_expandMenuItem" x:FieldModifier="private" Header="Expand" Click="ContextMenuExpand" Visibility="Collapsed" /> <MenuItem x:Name="_collapseMenuItem" x:FieldModifier="private" Header="Collapse" Click="ContextMenuCollapse" Visibility="Collapsed" /> </ContextMenu> </telerik:RadTreeView.ContextMenu> <telerik:RadTreeView.ItemTemplate> <HierarchicalDataTemplate ItemsSource="{Binding Children}" > <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding Header}"> <TextBlock.Style> <Style TargetType="TextBlock"> <Style.Triggers> <DataTrigger Binding="{Binding IsTemplateSet, RelativeSource={RelativeSource AncestorType={x:Type views:TreeView}}}" Value="True"> <Setter Property="Visibility" Value="Collapsed" /> </DataTrigger> </Style.Triggers> </Style> </TextBlock.Style> <ToolTipService.ToolTip> <ToolTip> <ToolTip.Content> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding ToolTip}" /> </StackPanel> </ToolTip.Content> </ToolTip> </ToolTipService.ToolTip> </TextBlock> <ContentPresenter x:Name="TreeItemContent" Content="{Binding Value}" ContentTemplate="{Binding TreeItemContentTemplate, RelativeSource={RelativeSource AncestorType={x:Type views:TreeView}}}" > <ContentPresenter.Style> <Style TargetType="ContentPresenter"> <Style.Triggers> <DataTrigger Binding="{Binding IsTemplateSet, RelativeSource={RelativeSource AncestorType={x:Type views:TreeView}}}" Value="False"> <Setter Property="Visibility" Value="Collapsed" /> </DataTrigger> </Style.Triggers> </Style> </ContentPresenter.Style> </ContentPresenter> </StackPanel> </HierarchicalDataTemplate> </telerik:RadTreeView.ItemTemplate> <telerik:RadTreeView.ItemContainerStyle> <Style TargetType="telerik:RadTreeViewItem" > <Setter Property="IsSelected" Value="{Binding Selected, Mode=TwoWay}" /> <Style.Triggers> <DataTrigger Binding="{Binding IsMarked }" Value="True"> <Setter Property="Background" Value="#F9D381" /> </DataTrigger> <DataTrigger Binding="{Binding ContainsMarkedItems }" Value="True"> <Setter Property="Background" Value="#F9EBCC" /> </DataTrigger> </Style.Triggers> </Style> </telerik:RadTreeView.ItemContainerStyle> </telerik:RadTreeView></UserControl>I cannot seem to create a Style for RadTreeViewItem and with a different Color for SelectedItem and set it as BasedOn in the ItemContainerStyle.
Any help would really be appreciated!
Regards
Jonathan
