Telerik UI for WPF

ScrollBar Visibility Settings

The scrolling functionality of RadCarousel employs standard WPF ScrollBar controls. Their visibility can be controlled through the VerticalScrollBarVisibility and HorizontalScrollBarVisibility properties. Scrolling in RadCarousel is two-directional - items moving towards the end point of the path or in the opposite direction, regardless of the scroll bar being used. Thus deciding whether to use a horizontal or a vertical (or none at all) scroll bar is purely a matter of personal preference.

Reflection Settings

RadCarousel has the ability to reflect its items thus giving them a pseudo 3D look and feel. The way the reflection is rendered can be controlled through the ReflectionSettings class and its members. This object holds settings for manually adjusting the reflection: the distance to the visual element, the opacity, size, visibility, angle, etc.

Using Panels in RadCarousel

RadCarousel depends on Panel controls for laying out its children (similar to WPF ItemsControl). The default Panel it uses is RadCarouselPanel which arranges its elements in a carousel-like matter. The panel control that RadCarousel uses for child arrangement can be set to any other panel via the ItemsPanel property, thus changing the layout logic.

Once a panel control is set, getting access to it can be achieved by using the Panel property. This property returns an object of type Panel.

Another way of getting the panel is by using the FindCarouselPanel() function that returns an instance of RadCarouselPanel (if used) or null.

This function should be used if the panel set as an items panel of the RadCarousel control is the default RadCarouselPanel or any other custom carousel panel that derives from it.

Automatic Generation of Data Templates

RadCarousel uses a DataTemplate for displaying data. This template will be automatically generated by the RadCarousel control if its AutoGenerateDataPresenters property is set to true.

You can also use a custom data template for your data type by defining it in a resource dictionary. In that case the AutoGenerateDataPresenters property should be set to false.