Hello ,
I have a problem about the method FindCarouselPanel().
Here is the code i wrote:
| <Style x:Key="RadCarouselStyle1" TargetType="{x:Type telerik:RadCarousel}"> |
| <Style.BasedOn> |
| <Style TargetType="{x:Type telerik:RadCarousel}"> |
| <Setter Property="Template"> |
| <Setter.Value> |
| <ControlTemplate TargetType="{x:Type telerik:RadCarousel}"> |
| <Grid> |
| <Grid.ColumnDefinitions> |
| <ColumnDefinition Width="50*" /> |
| <ColumnDefinition Width="50*" /> |
| </Grid.ColumnDefinitions> |
| <Button x:Name="EnSolItem" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="0" Width="40" Height="40" Margin="0,0,40,0" Content="EnSol" /> |
| <Button x:Name="SolItem" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Column="0" Width="40" Height="40" Content="Sol" /> |
| <Button x:Name="SagItem" HorizontalAlignment="Left" VerticalAlignment="Bottom" Grid.Column="1" Width="40" Height="40" Content="SaÄŸ" /> |
| <Button x:Name="EnSagItem" HorizontalAlignment="Left" VerticalAlignment="Bottom" Grid.Column="1" Width="40" Height="40" Margin="40,0,0,0" Content="EnSaÄŸ" /> |
| <Border Grid.ColumnSpan="2" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" |
| BorderThickness="{TemplateBinding BorderThickness}"> |
| <telerik:CarouselItemsControl x:Name="PART_RootItemsControl" Grid.ColumnSpan="2"/> |
| </Border> |
| </Grid> |
| </ControlTemplate> |
| </Setter.Value> |
| </Setter> |
| <Setter Property="ClipToBounds" Value="True"/> |
| </Style> |
| </Style.BasedOn> |
| </Style> |
this is the template i'm using,
<telerik:RadCarousel x:Name="radCarousel" Style="{DynamicResource RadCarouselStyle1}"/>
In my code Behind, I have an event handler and a function to give the path and etc.
| void radCarousel_Loaded(object sender, RoutedEventArgs e) |
| { |
| Telerik.Windows.Controls.RadCarouselPanel panel = this.radCarousel.FindCarouselPanel(); |
| this.radCarousel.ReflectionSettings.Visibility = Visibility.Visible; |
| this.radCarousel.ReflectionSettings.OffsetX = 0; |
| this.radCarousel.ReflectionSettings.OffsetY = 5; |
| this.radCarousel.ReflectionSettings.HiddenPercentage = 0; |
| this.radCarousel.ReflectionSettings.Opacity = 0.5; |
| this.radCarousel.ReflectionSettings.HeightOffset = 0; |
| this.radCarousel.ReflectionSettings.WidthOffset = 0; |
| this.radCarousel.ReflectionSettings.Angle = 0; |
| System.Windows.Shapes.Path path = CreateLinePath(); |
| if (panel != null) |
| { |
| this.radCarousel.FindCarouselPanel().Path = path; |
| this.radCarousel.FindCarouselPanel().ItemsPerPage = 7; |
| } |
| } |
| private System.Windows.Shapes.Path CreateLinePath() |
| { |
| System.Windows.Shapes.Path newPath = new System.Windows.Shapes.Path(); |
| PathFigureCollectionConverter figureConverter = new PathFigureCollectionConverter(); |
| object geometryFigures = figureConverter.ConvertFromString("M30,200 L307.5,200"); |
| PathGeometry newGeometry = new PathGeometry(); |
| newPath.Stretch = Stretch.Fill; |
| BrushConverter brushConverter = new BrushConverter(); |
| newPath.Stroke = (System.Windows.Media.Brush)brushConverter.ConvertFromString("#FF0998f8"); |
| newPath.StrokeThickness = 2; |
| newGeometry.Figures = (PathFigureCollection)geometryFigures; |
| newPath.Data = (Geometry)newGeometry; |
| return newPath; |
| } |
While i'm setting the
this.radCarousel.FindCarouselPanel().Path = path;
this.radCarousel.FindCarouselPanel().ItemsPerPage = 7;
part, FindCarouselPanel() returns null. Yesterday it was working. I didn't changed anything except the Style of radCarousel. Should i be implementing the RadCarouselPanel to style as well?
Please help.