RadRadialMenu
Represents a radial menu control that allows users to interact with a set of commands arranged in a circular layout. This control can be customized with various options and is often used for providing quick access to frequently used functions or commands in an application.
Definition
Namespace:Telerik.Windows.Controls
Assembly:Telerik.Windows.Controls.Navigation.dll
Syntax:
[Bindable(BindableSupport.Default)]
[TelerikToolboxCategory("Navigation")]
public class RadRadialMenu : Control, INotifyPropertyChanged
Inheritance: objectRadRadialMenu
Implements:
Constructors
Initializes a new instance of the RadRadialMenu class.
public RadRadialMenu()
Fields
AutoCalculateStartAngleProperty
DependencyProperty
Identifies the AutoCalculateStartAngle dependency property.
public static readonly DependencyProperty AutoCalculateStartAngleProperty
AutoSizeMenuItemsProperty
DependencyProperty
Identifies the AutoSizeMenuItems dependency property.
public static readonly DependencyProperty AutoSizeMenuItemsProperty
ClosedEvent
RoutedEvent
Identifies the Closed routed event.
public static readonly RoutedEvent ClosedEvent
ContentMenuBackgroundStyleProperty
DependencyProperty
Identifies the ContentMenuBackgroundStyle dependency property.
public static readonly DependencyProperty ContentMenuBackgroundStyleProperty
HideEventNameProperty
DependencyProperty
Identifies the HideEventName dependency property.
public static readonly DependencyProperty HideEventNameProperty
InnerNavigationRadiusFactorProperty
DependencyProperty
Identifies the InnerNavigationRadiusFactor dependency property.
public static readonly DependencyProperty InnerNavigationRadiusFactorProperty
InnerRadiusFactorProperty
DependencyProperty
Identifies the InnerRadiusFactor dependency property.
public static readonly DependencyProperty InnerRadiusFactorProperty
IsOpenProperty
DependencyProperty
Identifies the IsOpen dependency property.
public static readonly DependencyProperty IsOpenProperty
ItemsSourceProperty
DependencyProperty
Identifies the ItemsSource dependency property.
public static readonly DependencyProperty ItemsSourceProperty
NavigatedEvent
RoutedEvent
Identifies the Navigate routed event.
public static readonly RoutedEvent NavigatedEvent
NavigationMenuBackgroundStyleProperty
DependencyProperty
Identifies the NavigationMenuBackgroundStyle dependency property.
public static readonly DependencyProperty NavigationMenuBackgroundStyleProperty
OpenedEvent
RoutedEvent
Identifies the Opened routed event.
public static readonly RoutedEvent OpenedEvent
OpeningEvent
RoutedEvent
Identifies the Opening routed event.
public static readonly RoutedEvent OpeningEvent
OuterBorderPaddingProperty
DependencyProperty
Identifies the PlacementMode dependency property.
public static readonly DependencyProperty OuterBorderPaddingProperty
OuterRadiusFactorProperty
DependencyProperty
Identifies the OuterRadiusFactor dependency property.
public static readonly DependencyProperty OuterRadiusFactorProperty
PopupHorizontalOffsetProperty
DependencyProperty
Identifies the PlacementMode dependency property.
public static readonly DependencyProperty PopupHorizontalOffsetProperty
PopupPlacementProperty
DependencyProperty
Identifies the PlacementMode dependency property.
public static readonly DependencyProperty PopupPlacementProperty
PopupVerticalOffsetProperty
DependencyProperty
Identifies the PlacementMode dependency property.
public static readonly DependencyProperty PopupVerticalOffsetProperty
PreviewToolTipOpenEvent
RoutedEvent
Identifies the PreviewToolTipOpen routed event.
public static readonly RoutedEvent PreviewToolTipOpenEvent
RadialContextMenuProperty
DependencyProperty
Identifies the RadRadialMenu attached property.
public static readonly DependencyProperty RadialContextMenuProperty
ShowEventNameProperty
DependencyProperty
Identifies the ShowEventName dependency property.
public static readonly DependencyProperty ShowEventNameProperty
ShowToolTipProperty
DependencyProperty
Identifies the ShowToolTip dependency property.
public static readonly DependencyProperty ShowToolTipProperty
StartAngleProperty
DependencyProperty
Identifies the StartAngle dependency property.
public static readonly DependencyProperty StartAngleProperty
StaysOpenOnShowProperty
DependencyProperty
Identifies the StaysOpenOnShow dependency property.
public static readonly DependencyProperty StaysOpenOnShowProperty
Properties
Gets or sets the speed factor for the animations in RadRadialMenu. The default value is 1.5d. The value is always a positive number. The min value is 0.1d.
public static double AnimationSpeedFactor { get; set; }
Gets or sets a value that indicates whether the start angle of the first menu item should be calculated automatically. If set to false the StartAngle property will be used to determine the starting position of the first menu item. This property only works when AutoSizeMenuItems is set to true.
public bool AutoCalculateStartAngle { get; set; }
Gets or sets whether the menu items would be auto sized to fill the whole circle of the menu. Setting this property to true allows you to add more than 8 menu items.
public bool AutoSizeMenuItems { get; set; }
Gets the collection with all the custom commands registered with the CommandService.
public CommandCollection<RadRadialMenu> Commands { get; }
Custom commands have higher priority than the built-in (default) ones.
Gets the CommandService instance that manages the commanding behavior of this instance.
public CommandService CommandService { get; }
Gets or sets the Style value that defines the appearance of the menu items panel.
public Style ContentMenuBackgroundStyle { get; set; }
The Style should target the Rectangle type.
Sets or gets whether the RadRadialMenu is in quick mode. If true, the animation is disabled and the control doesn't close when hiding.
public static bool EnableQuickMode { get; set; }
Gets or sets the name of the event that will hide the context menu.
public string HideEventName { get; set; }
The name of the event.
Gets or sets the factor that defines the inner radius of the panel holding the NavigationItemButton items as a fraction of the size of the RadRadialMenu control.
public double InnerNavigationRadiusFactor { get; set; }
The value should be between 0 and 1. If the passed value lies outside this range, it is automatically set to the nearest boundary value.
Gets or sets the factor that defines the inner radius of the panel holding the RadRadialMenuItem items as a fraction of the size of the RadRadialMenu control.
public double InnerRadiusFactor { get; set; }
The value should be between 0 and 1. If the passed value lies outside this range, it is automatically set to the nearest boundary value.
Gets or sets a value that indicates whether the RadRadialMenu is open.
public bool IsOpen { get; set; }
Determines whether the OnApplyTemplate() method and the ApplyTemplateCore() routine is passed.
protected bool IsTemplateApplied { get; }
Gets the RadialMenuItemContainerGenerator of the RadRadialMenu
public RadialMenuItemContainerGenerator ItemContainerGenerator { get; }
Gets the collection of all RadRadialMenuItem.
public ObservableCollection<RadRadialMenuItem> Items { get; }
Gets or sets a collection used to generate the content of the RadRadialMenu.
public IEnumerable<IRadialMenuItem> ItemsSource { get; set; }
Gets or sets the Style value that defines the appearance of the navigation buttons panel.
public Style NavigationMenuBackgroundStyle { get; set; }
The Style should target the Rectangle type.
Gets or sets the distance between the outer ring of the RadRadialMenu and its RadRadialMenuItem.
public double OuterBorderPadding { get; set; }
Gets or sets the factor that defines the outer radius of the panel holding the NavigationItemButton items as a fraction of the size of the RadRadialMenu control.
public double OuterRadiusFactor { get; set; }
The value should be between 0 and 1. If the passed value lies outside this range, it is automatically set to the nearest boundary value.
Gets or sets a PopupHorizontalOffset that determines the horizontal offset of the menu's Popup. This is a dependency property. Only used when PopupPlacement i set to Absolute and AbsolutePoint.
public double PopupHorizontalOffset { get; set; }
PopupPlacement
PlacementMode
Gets or sets a PopupPlacement that determines where the menu would be position. This is a dependency property.
public PlacementMode PopupPlacement { get; set; }
Gets or sets a PopupVerticalOffset that determines the horizontal offset of the menu's Popup. This is a dependency property. Only used when PopupPlacement i set to Absolute and AbsolutePoint.
public double PopupVerticalOffset { get; set; }
Gets or sets the name of the event that will show the context menu.
public string ShowEventName { get; set; }
The name of the event.
Gets or sets a value that indicates whether a tool tip, displaying the current selected RadRadialMenuItem header text, will be displayed.
public bool ShowToolTip { get; set; }
Gets or sets the start angle for ordering the RadRadialMenuItem components.
public double StartAngle { get; set; }
The angle is measured in radians.
Gets or sets whether the RadRadialMenu will be automatically opened when shown as context menu.
public bool StaysOpenOnShow { get; set; }
TargetElement
FrameworkElement
Gets the target FrameworkElement instance that RadRadialMenu is assigned to.
public FrameworkElement TargetElement { get; }
Before the menu is attached to the element this property has null value.
Methods
Called when the Framework is called. Inheritors should override this method should they have some custom template-related logic. This is done to ensure that the property is properly initialized.
Determines whether the current visual state may be updated.
Builds the current visual state for this instance.
Returns the instance of current RadRadialMenu that is attached to specific FrameworkElement.
public static RadRadialMenu GetRadialContextMenu(DependencyObject obj)
The target FrameworkElement.
Returns:The attached RadRadialMenu control.
When overridden in a derived class, is invoked whenever application code or internal processes (such as a rebuilding layout pass) call .
public override void OnApplyTemplate()
OnCreateAutomationPeer()
AutomationPeer
Creates a RadRadialMenuAutomationPeer.
protected override AutomationPeer OnCreateAutomationPeer()
AutomationPeer
Raises the event. This method is invoked whenever is set to true internally.
protected override void OnInitialized(EventArgs e)
The RoutedEventArgs that contains the event data.
Called before the System.Windows.UIElement.MouseLeave event occurs.
protected override void OnMouseLeave(MouseEventArgs e)
The data for the event.
Called before the System.Windows.UIElement.MouseLeftButtonUp event occurs.
protected override void OnMouseLeftButtonUp(MouseButtonEventArgs e)
The data for the event.
Called before the System.Windows.UIElement.MouseMove event occurs.
protected override void OnMouseMove(MouseEventArgs e)
The data for the event.
Fires the Navigating event.
protected virtual void OnNavigating(RadialMenuNavigatingEventArgs e)
The data for the event.
Creates the MenuToolTipEventArgs and raises the PreviewToolTipOpen routed event.
protected virtual MenuToolTipEventArgs OnPreviewToolTipOpen(RadRadialMenuItem menuItem, PlacementMode placement, double horizontalOffset, double verticalOffset, double outerRadius)
Called when a value of a property is changed.
protected void OnPropertyChanged(string name)
The name of the property that changes.
Called when selection is changed.
protected virtual void OnSelectionChanged(RadRadialMenuItem item)
The changed menu item.
Occurs when the method has been called and the template is already successfully applied.
protected void OnTemplateApplied()
Resets the theme.
public void ResetTheme()
Attaches an instance of RadRadialMenu to a specific FrameworkElement.
public static void SetRadialContextMenu(DependencyObject obj, RadRadialMenu value)
The target FrameworkElement.
valueRadRadialMenuThe RadRadialMenu instance to be attached to the target element.
Re-evaluates the current visual state for the control and updates it if necessary.
protected virtual void UpdateVisualState(bool animate)
True to use transitions during state update, false otherwise.
Events
Occurs when a RadRadialMenu is closed.
[SRCategory("Behavior")]
public event RadRoutedEventHandler Closed
Occurs when a RadRadialMenu is navigated to another view.
[SRCategory("Behavior")]
public event RadRoutedEventHandler Navigated
Occurs before a menu level changes.
public event EventHandler<RadialMenuNavigatingEventArgs> Navigating
Occurs when a RadRadialMenu is opened.
[SRCategory("Behavior")]
public event RadRoutedEventHandler Opened
Occurs before particular instance of RadRadialMenu opens. If it is handled then RadRadialMenu will not open.
[SRCategory("Behavior")]
public event RadRoutedEventHandler Opening
Occurs before MenuToolTip is shown.
public event RadRadialMenu.MenuToolTipEventHandler PreviewToolTipOpen
Occurs when a property value changes.
public event PropertyChangedEventHandler PropertyChanged
Implements:
Occurs when menu item is selected/deselected.
public event EventHandler<MenuSelectionChangedEventArgs> SelectionChanged