skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • AI Coding Assistants
    • Embedded Reporting
    • Document Processing Libraries
    • SSO Account Sign-in

    Web

    Kendo UI UI for Angular UI for Vue UI for jQuery KendoReact UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Telerik JustMock

    CMS

    Sitefinity

    AI Productivity Tools

    AI Coding Assistants

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    KendoReact Free VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Forums
    • Videos
    • Blogs
    • Accessibility
    • Submit a Ticket

    Productivity and Design Tools

    • Visual Studio Extensions
    • Visual Studio Templates
    • Embedded Reporting
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Class RadCarousel

Represents a carousel control that animates a group of items in a carousel-style rotation with customizable paths and animations.

Inheritance
System.Object
RadControl
RadCarousel
Inherited Members
RadControl.isResizing2
RadControl.isDisposing2
RadControl.invalidResizeRect
RadControl.isAccessibilityRequested
RadControl.Dispose(Boolean)
RadControl.Construct()
RadControl.CreateBehavior()
RadControl.CreateRootElement()
RadControl.InitializeRootElement(RootRadElement)
RadControl.LoadElementTree()
RadControl.LoadElementTree(Size)
RadControl.SetIsInitializing(Boolean)
RadControl.ShouldSerializeBackColor()
RadControl.SetBackColorThemeOverrides()
RadControl.ResetBackColorThemeOverrides()
RadControl.ShouldSerializeForeColor()
RadControl.SetForeColorThemeOverrides()
RadControl.ResetForeColorThemeOverrides()
RadControl.ShouldSerializeFont()
RadControl.OnKeyDown(KeyEventArgs)
RadControl.OnKeyUp(KeyEventArgs)
RadControl.OnPreviewKeyDown(PreviewKeyDownEventArgs)
RadControl.OnKeyPress(KeyPressEventArgs)
RadControl.OnClick(EventArgs)
RadControl.OnDoubleClick(EventArgs)
RadControl.OnMouseDown(MouseEventArgs)
RadControl.OnMouseUp(MouseEventArgs)
RadControl.OnMouseEnter(EventArgs)
RadControl.OnMouseLeave(EventArgs)
RadControl.OnMouseMove(MouseEventArgs)
RadControl.OnMouseHover(EventArgs)
RadControl.OnMouseWheel(MouseEventArgs)
RadControl.OnMouseCaptureChanged(EventArgs)
RadControl.OnGotFocus(EventArgs)
RadControl.OnLostFocus(EventArgs)
RadControl.OnCreateControl()
RadControl.OnHandleDestroyed(EventArgs)
RadControl.OnParentChanged(EventArgs)
RadControl.OnVisibleChanged(EventArgs)
RadControl.OnFontChanged(EventArgs)
RadControl.OnForeColorChanged(EventArgs)
RadControl.OnBackColorChanged(EventArgs)
RadControl.OnEnabledChanged(EventArgs)
RadControl.OnBindingContextChanged(EventArgs)
RadControl.OnLocationChanged(EventArgs)
RadControl.OnPaddingChanged(EventArgs)
RadControl.OnRightToLeftChanged(EventArgs)
RadControl.OnPaint(PaintEventArgs)
RadControl.OnLayout(LayoutEventArgs)
RadControl.OnAutoSizeChanged(EventArgs)
RadControl.WndProc(Message)
RadControl.OnInvalidated(RadElement)
RadControl.OnCaptureLosing()
RadControl.OnThemeChanged()
RadControl.OnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.OnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.OnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.ProcessMnemonic(Char)
RadControl.ProcessFocusRequested(RadElement)
RadControl.ProcessCaptureChangeRequested(RadElement, Boolean)
RadControl.ProcessAutoSizeChanged(Boolean)
RadControl.CallOnMouseCaptureChanged(EventArgs)
RadControl.CallBaseOnGotFocus(EventArgs)
RadControl.CallBaseOnLostFocus(EventArgs)
RadControl.CallOnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.CallOnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.CallOnMouseUp(MouseEventArgs)
RadControl.CallOnMouseDown(MouseEventArgs)
RadControl.CallOnClick(EventArgs)
RadControl.CallOnDoubleClick(EventArgs)
RadControl.CallOnMouseEnter(EventArgs)
RadControl.CallOnMouseWheel(MouseEventArgs)
RadControl.CallOnMouseLeave(EventArgs)
RadControl.CallOnMouseMove(MouseEventArgs)
RadControl.CallOnMouseHover(EventArgs)
RadControl.CallOnPreviewKeyDown(PreviewKeyDownEventArgs)
RadControl.CallBaseOnKeyDown(KeyEventArgs)
RadControl.CallOnKeyDown(KeyEventArgs)
RadControl.CallBaseOnKeyPress(KeyPressEventArgs)
RadControl.CallOnKeyPress(KeyPressEventArgs)
RadControl.IsInputKey(Keys)
RadControl.CallBaseOnKeyUp(KeyEventArgs)
RadControl.CallOnKeyUp(KeyEventArgs)
RadControl.CallOnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.CallOnVisibleChanged(EventArgs)
RadControl.BeginInit()
RadControl.EndInit()
RadControl.OnNotifyPropertyChanged(String)
RadControl.OnNotifyPropertyChanged(PropertyChangedEventArgs)
RadControl.IComponentTreeHandler.GetShowFocusCues()
RadControl.IComponentTreeHandler.CreateRootElement()
RadControl.IComponentTreeHandler.CreateChildItems(RadElement)
RadControl.IComponentTreeHandler.InitializeRootElement(RootRadElement)
RadControl.IComponentTreeHandler.InvalidateElement(RadElement)
RadControl.IComponentTreeHandler.InvalidateElement(RadElement, Rectangle)
RadControl.IComponentTreeHandler.InvalidateIfNotSuspended()
RadControl.IComponentTreeHandler.GetAmbientPropertyValue(RadProperty)
RadControl.IComponentTreeHandler.ControlThemeChangedCallback()
RadControl.IComponentTreeHandler.OnAmbientPropertyChanged(RadProperty)
RadControl.IComponentTreeHandler.OnFocusRequested(RadElement)
RadControl.IComponentTreeHandler.OnCaptureChangeRequested(RadElement, Boolean)
RadControl.IComponentTreeHandler.OnDisplayPropertyChanged(RadPropertyChangedEventArgs)
RadControl.IComponentTreeHandler.CallOnThemeNameChanged(ThemeNameChangedEventArgs)
RadControl.IComponentTreeHandler.CallOnMouseCaptureChanged(EventArgs)
RadControl.IComponentTreeHandler.CallOnToolTipTextNeeded(Object, ToolTipTextNeededEventArgs)
RadControl.IComponentTreeHandler.CallOnScreenTipNeeded(Object, ScreenTipNeededEventArgs)
RadControl.GetPreferredSize(Size)
RadControl.SetBoundsCore(Int32, Int32, Int32, Int32, BoundsSpecified)
RadControl.GetRootElementDesiredSize(Int32, Int32, Int32, Int32)
RadControl.OnZoomGesture(ZoomGestureEventArgs)
RadControl.OnRotateGesture(RotateGestureEventArgs)
RadControl.OnPanGesture(PanGestureEventArgs)
RadControl.OnTwoFingerTapGesture(GestureEventArgs)
RadControl.OnPressAndTapGesture(PressAndTapGestureEventArgs)
RadControl.OnGesture(GestureEventArgs)
RadControl.ProcessGesture(Message)
RadControl.EnableGesture(GestureType)
RadControl.DisableGesture(GestureType)
RadControl.Refresh()
RadControl.SuspendUpdate()
RadControl.ResumeUpdate()
RadControl.ResumeUpdate(Boolean)
RadControl.InvokeLayoutCallback(LayoutCallback)
RadControl.RegisterHostedControl(RadHostItem)
RadControl.UnregisterHostedControl(RadHostItem, Boolean)
RadControl.ResolveStyleGroupForElement(StyleGroup, RadObject)
RadControl.GetPlainText()
RadControl.CanEditUIElement(RadElement)
RadControl.GetChildAt(Int32)
RadControl.ShouldSerializeProperty(RadProperty)
RadControl.ShouldSerializeProperty(RadProperty, RadObject)
RadControl.ResetProperty(RadProperty, RadObject)
RadControl.CanEditElementAtDesignTime(RadElement)
RadControl.GetControlDefaultSize()
RadControl.GetDpiScaledSize(Size)
RadControl.GetDpiScaledSize(SizeF)
RadControl.ProcessCodedUIMessage(IPCMessage)
RadControl.FindPropertyInChildren(RadControl, IPCMessage)
RadControl.CallAccessibilityNotifyClients(AccessibleEvents, Int32)
RadControl.IPCHost.ProcessMessage(IPCMessage)
RadControl.ScaleControl(SizeF, BoundsSpecified)
RadControl.PerformRadAutoScale(Nullable<BoundsSpecified>)
RadControl.SetRadAutoScale(Boolean)
RadControl.IComponentTreeHandler.get_Name()
RadControl.IComponentTreeHandler.set_Name(String)
RadControl.EnableDpiScaling
RadControl.EnableRadAutoScale
RadControl.EnableRadFormInitialDpiScaling
RadControl.EnableImageDpiScaling
RadControl.EnableSvgImages
RadControl.IsTrial
RadControl.IsLoaded
RadControl.LayoutManager
RadControl.ElementTree
RadControl.UseCompatibleTextRenderingDefaultValue
RadControl.Behavior
RadControl.RootElement
RadControl.Padding
RadControl.ThemeName
RadControl.Text
RadControl.EnableTheming
RadControl.ThemeClassName
RadControl.ImageList
RadControl.ImageScalingSize
RadControl.UseCompatibleTextRendering
RadControl.MaximumSize
RadControl.MinimumSize
RadControl.Focusable
RadControl.Site
RadControl.CausesValidation
RadControl.IsInitializing
RadControl.SmallImageList
RadControl.SmallImageScalingSize
RadControl.IsDesignMode
RadControl.IsDisplayed
RadControl.FocusedElement
RadControl.AllowShowFocusCues
RadControl.ShowItemToolTips
RadControl.CommandBindings
RadControl.EnableKeyMap
RadControl.BackColor
RadControl.ForeColor
RadControl.Font
RadControl.ValidationCancel
RadControl.IComponentTreeHandler.IsDesignMode
RadControl.IComponentTreeHandler.ElementTree
RadControl.IComponentTreeHandler.Behavior
RadControl.IComponentTreeHandler.Initializing
RadControl.IComponentTreeHandler.ThemeClassName
RadControl.EnableGestures
RadControl.EnableAnalytics
RadControl.AnalyticsName
RadControl.EnableRadAccessibilityObjects
RadControl.AccessibilityRequested
RadControl.EnableCodedUITests
RadControl.EnableCodedUITestsDefaultValue
RadControl.EnableUIAutomation
RadControl.EnableUIAutomationDefaultValue
RadControl.IPCHost.Context
RadControl.ElementInvalidated
RadControl.ToolTipTextNeeded
RadControl.ScreenTipNeeded
RadControl.ThemeNameChanged
RadControl.Initialized
RadControl.PropertyChanged
RadControl.ZoomGesture
RadControl.RotateGesture
RadControl.PanGesture
RadControl.TwoFingerTapGesture
RadControl.PressAndTapGesture
Namespace: Telerik.WinControls.UI
Assembly: Telerik.WinControls.UI.dll

Syntax

public class RadCarousel : RadControl, INotifyPropertyChanged, ISupportInitializeNotification, ISupportInitialize, IComponentTreeHandler, ILayoutHandler, IPCHost, IAnalyticsProvider
Remarks

You can add item to RadCarousel control using Items collection, or through binding to data by assigning its DataSource properties. In order to manage the display of great number of items you may need to set the VirtualMode property to true. In this case you should specify the maximum visible number of item, using the VisibleItemCount property. Item path can be specified through CarouselPath property. Each carousel path instance contains properties to adjust various aspects of the path curve, including "start" and "end" position, selected items position. If you use a RadCarousel bound to a data, you would need to handle the ItemDataBound event to change each carouselItem's properties according to items in the data source. You may also need to handle the NewCarouselItemCreating event, to change the default type of items RadCarousel will produce when data binding.

Constructors

RadCarousel()

Initializes a new instance of the RadCarousel class.

Declaration
public RadCarousel()

Properties

AnimationDelay

Gets or sets the delay in ms. between two frames of animation.

Declaration
public int AnimationDelay { get; set; }
Property Value
System.Int32

AnimationFrames

Gets or sets the number of animation frames between two positions.

Declaration
public int AnimationFrames { get; set; }
Property Value
System.Int32

AnimationsToApply

Gets or sets value indicating which of the predefined animations will be applied to carousel items

Declaration
public Animations AnimationsToApply { get; set; }
Property Value
Animations

AutoLoopDirection

Gets or sets a value indicating whether carousel will increment or decrement item indexes when in auto-loop mode.

Declaration
public AutoLoopDirections AutoLoopDirection { get; set; }
Property Value
AutoLoopDirections

AutoLoopPauseCondition

Gets or sets a value indicating when carousel will pause looping if in auto-loop mode.

Declaration
public AutoLoopPauseConditions AutoLoopPauseCondition { get; set; }
Property Value
AutoLoopPauseConditions

AutoLoopPauseInterval

Gets or sets a value indicating the interval (in seconds) after which the carousel will resume looping when in auto-loop mode.

Declaration
public int AutoLoopPauseInterval { get; set; }
Property Value
System.Int32

AutoSize

This property is not relevant for this class.

Declaration
public override bool AutoSize { get; set; }
Property Value
System.Boolean

Overrides
RadControl.AutoSize

ButtonNext

Gets the Next button that is used to navigate to the next item.

Declaration
public RadRepeatButtonElement ButtonNext { get; }
Property Value
RadRepeatButtonElement

ButtonPositions

Represent the Navigation buttons Positions

Declaration
public virtual NavigationButtonsPosition ButtonPositions { get; set; }
Property Value
NavigationButtonsPosition

ButtonPrevious

Gets the Previous button that is used to navigate to the previous item.

Declaration
public RadRepeatButtonElement ButtonPrevious { get; }
Property Value
RadRepeatButtonElement

CarouselElement

Gets a reference to the Carousel element, which encapsulates the most of the functionality of RadCarousel

Declaration
public RadCarouselElement CarouselElement { get; }
Property Value
RadCarouselElement

CarouselPath

Gets or sets the path that carousel items will follow when animated.

Declaration
public CarouselParameterPath CarouselPath { get; set; }
Property Value
CarouselParameterPath

DataSource

Gets or sets the data source for the carousel items.

Declaration
public object DataSource { get; set; }
Property Value
System.Object

DefaultSize

Gets the default size of the control.

Declaration
protected override Size DefaultSize { get; }
Property Value
System.Drawing.Size

EasingType

Gets or sets the easing equation to be used for the animations.

Declaration
public RadEasingType EasingType { get; set; }
Property Value
RadEasingType

EnableAnimationOnFormResize

Enable or disable the re-animation of RadCarousel on form maximize, minimize or resize

Declaration
public virtual bool EnableAnimationOnFormResize { get; set; }
Property Value
System.Boolean

EnableAutoLoop

Gets or sets a value indicating that the Carousel will loop items automatically.

Declaration
public bool EnableAutoLoop { get; set; }
Property Value
System.Boolean

EnableKeyboardNavigation

Gets or sets a value indicating whether the keyboard navigation is enabled.

Declaration
public virtual bool EnableKeyboardNavigation { get; set; }
Property Value
System.Boolean

EnableLooping

Gets or sets value indicating that when item position goes beyond the carousel path, it will be displayed again in the beginning of the carousel path.

Declaration
public bool EnableLooping { get; set; }
Property Value
System.Boolean

EnableRelativePath

Gets or sets a value indicating whether relative point coordinates are used. If set to true, each point should be between 0 and 100.

Declaration
public bool EnableRelativePath { get; set; }
Property Value
System.Boolean

FormattingEnabled

Gets or sets a value indicating whether formatting is applied to the DisplayMember property.

Declaration
public bool FormattingEnabled { get; set; }
Property Value
System.Boolean

ItemClickDefaultAction

Gets or sets the default action when item is clicked as CarouselItemClickAction member.

Declaration
public CarouselItemClickAction ItemClickDefaultAction { get; set; }
Property Value
CarouselItemClickAction

The item click default action.

ItemReflectionPercentage

Gets or sets value indicating the height (in percentage - values from 0.0. to 1.0) of reflection that will be painted bellow each carousel item.

Declaration
public double ItemReflectionPercentage { get; set; }
Property Value
System.Double

The item reflection percentage.

Remarks

0.0 indicates no reflection and 1.0 indicates 100% of the height of the original item

Items

Gets the collection of items in the carousel.

Declaration
[RadEditItemsAction]
[RadDescription("Items", typeof(RadCarouselElement))]
public RadItemCollection Items { get; }
Property Value
RadItemCollection

MinFadeOpacity

Gets or sets value indicating the minimum value of the opacity applied to items

Declaration
public double MinFadeOpacity { get; set; }
Property Value
System.Double

NavigationButtonsOffset

Get or sets the minimum size to apply on an element when layout is calculated.

Declaration
public virtual Size NavigationButtonsOffset { get; set; }
Property Value
System.Drawing.Size

OpacityChangeCondition

Sets the way opacity is applied to carousel items

Declaration
public OpacityChangeConditions OpacityChangeCondition { get; set; }
Property Value
OpacityChangeConditions

SelectedIndex

Gets or sets the item in the carousel that is currently selected.

Declaration
public virtual int SelectedIndex { get; set; }
Property Value
System.Int32

SelectedItem

Gets or sets the currently selected item in the carousel.

Declaration
public virtual object SelectedItem { get; set; }
Property Value
System.Object

SelectedValue

Gets or sets the value of the currently selected item in the carousel.

Declaration
public object SelectedValue { get; set; }
Property Value
System.Object

ValueMember

Gets or sets the field from the data source to use as the actual value for the carousel items.

Declaration
public string ValueMember { get; set; }
Property Value
System.String

VirtualMode

Get or sets value indicating the maximum number of items that will be displayed in the carousel, even when there are more Items in the Items collection. Virtualizing the carousel would significantly improve its performance.

Declaration
public bool VirtualMode { get; set; }
Property Value
System.Boolean

Remarks

False indicates that all items be displayed. It depends on SelectedIndex, which items are displayed in this case.

VisibleItemCount

Gets or sets the number of items that carousel displays when VirtualMode is set to true.

Declaration
public int VisibleItemCount { get; set; }
Property Value
System.Int32

Methods

ControlDefinesThemeForElement(RadElement)

Determines whether the control defines the theme for the specified element.

Declaration
public override bool ControlDefinesThemeForElement(RadElement element)
Parameters
RadElement element

The element to check.

Returns
System.Boolean

true if the control defines the theme for the element; otherwise, false.

Overrides
RadControl.ControlDefinesThemeForElement(RadElement)

CreateChildItems(RadElement)

Creates the child elements for the RadCarousel control.

Declaration
protected override void CreateChildItems(RadElement parent)
Parameters
RadElement parent

The parent element to which the child elements will be added.

Overrides
RadControl.CreateChildItems(RadElement)

GetInputElement()

Gets the input element for keyboard navigation.

Declaration
protected override RadElement GetInputElement()
Returns
RadElement

The RadCarouselElement that handles input.

Overrides
RadControl.GetInputElement()

OnLoad(Size)

Called when the control is loaded. Enables pan gesture support for the carousel.

Declaration
protected override void OnLoad(Size desiredSize)
Parameters
System.Drawing.Size desiredSize

The desired size for the control.

Overrides
RadControl.OnLoad(Size)

Events

ItemDataBound

Occurs after an Item is data-bound.

Declaration
public event ItemDataBoundEventHandler ItemDataBound
Event Type
ItemDataBoundEventHandler

NewCarouselItemCreating

Occurs before a new data-bound carousel item is created. You can use this event to replace the default item.

Declaration
public event NewCarouselItemCreatingEventHandler NewCarouselItemCreating
Event Type
NewCarouselItemCreatingEventHandler

SelectedIndexChanged

Occurs when the SelectedIndex property has changed.

Declaration
public event EventHandler SelectedIndexChanged
Event Type
System.EventHandler

SelectedItemChanged

Occurs when the selected item is changed.

Declaration
public event EventHandler SelectedItemChanged
Event Type
System.EventHandler

SelectedValueChanged

Occurs when the SelectedValue property has changed.

Declaration
public event EventHandler SelectedValueChanged
Event Type
System.EventHandler

Extension Methods

SvgExtentions.Traverse<T>(T, Func<T, IEnumerable<T>>)
SvgExtentions.TraverseDepthFirst<T>(T, Func<T, IEnumerable<T>>)
Getting Started
  • Install Now
  • Demos
  • Step-by-Step Tutorial
  • Sample Applications
  • SDK Samples
  • Visual Studio Extensions
Support Resources
  • Code Library
  • Knowledge Base
  • Videos
Community
  • Forums
  • Blogs
  • Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.