private static void OnIsSelectedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var item = d as RadialMenuItem; var newValue = (bool)e.NewValue; var oldValue = (bool)e.OldValue; if (item.IsInternalPropertyChange) { return; } if (oldValue == newValue || !RadialMenuModel.CanChangeSelection(item, newValue)) { item.ChangePropertyInternally(RadialMenuItem.IsSelectedProperty, oldValue); } if (item.Owner != null) { item.Owner.OnSelectionChanged(item); var contentSegment = item.Owner.GetContentSegment(item); if (contentSegment != null) { var radialMenuItemControl = contentSegment.Visual as RadialMenuItemControl; if (radialMenuItemControl != null) { var peer = FrameworkElementAutomationPeer.CreatePeerForElement(radialMenuItemControl) as RadialMenuItemControlAutomationPeer; if (peer != null) { peer.RaiseToggleStatePropertyChangedEvent((bool)e.OldValue, (bool)e.NewValue); } } } } }
/// <summary> /// Initializes a new instance of the <see cref="RadRadialMenu"/> class. /// </summary> public RadRadialMenu() { this.DefaultStyleKey = typeof(RadRadialMenu); this.model = new RadialMenuModel(this); this.hitTestService = new HitTestService(this); this.visualstateService = new VisualStateService(this); this.commandService = new CommandService(this); this.SizeChanged += this.OnRadRadialMenuSizeChanged; }
/// <summary> /// Initializes a new instance of the <see cref="RadRadialMenu"/> class. /// </summary> public RadRadialMenu() { this.DefaultStyleKey = typeof(RadRadialMenu); this.model = new RadialMenuModel(this); this.hitTestService = new HitTestService(this); this.visualstateService = new VisualStateService(this); this.commandService = new CommandService(this); this.SizeChanged += this.OnRadRadialMenuSizeChanged; this.tooltip = new Popup(); this.menuToolTipContent = new MenuToolTip(); this.tooltip.Child = this.menuToolTipContent; }
private static void OnIsSelectedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var item = d as RadialMenuItem; var newValue = (bool)e.NewValue; var oldValue = (bool)e.OldValue; if (item.IsInternalPropertyChange) { return; } if (oldValue == newValue || !RadialMenuModel.CanChangeSelection(item, newValue)) { item.ChangePropertyInternally(RadialMenuItem.IsSelectedProperty, oldValue); } if (item.Owner != null) { item.Owner.OnSelectionChanged(item); } }