Workaround: public class CustomPageView : RadPageView { public override string ThemeClassName { get { return typeof(RadPageView).FullName; } } protected override RadPageViewElement CreateUI() { if (this.ViewMode == PageViewMode.NavigationView) { return new CustomRadPageViewNavigationViewElement(); } return base.CreateUI(); } } public class CustomRadPageViewNavigationViewElement : RadPageViewNavigationViewElement { protected override Type ThemeEffectiveType { get { return typeof(RadPageViewNavigationViewElement); } } public override void Expand() { if (!this.IsCollapsed) { return; } FieldInfo pi = typeof(RadPageViewNavigationViewElement).GetField("isCollapsed", BindingFlags.NonPublic | BindingFlags.Instance); pi.SetValue(this, false); this.ItemContainer.Visibility = ElementVisibility.Visible; NavigationViewDisplayModes mode = this.GetEffectiveDisplayMode(this.Size.Width); if (mode == NavigationViewDisplayModes.Expanded) { this.ItemContainer.MinSize = new Size(this.ExpandedPaneWidth, 0); } else { this.PopupStack.Children.Insert(0, this.HamburgerButton); if (!this.PopupStack.Children.Contains(this.ItemContainer)) { this.PopupStack.Children.Add(this.ItemContainer); } this.HamburgerButton.Alignment = this.RightToLeft ? ContentAlignment.TopRight : ContentAlignment.TopLeft; this.HamburgerButton.StretchHorizontally = true; this.ItemContainer.ItemLayout.SetValue(RadPageViewStripElement.StripAlignmentProperty, StripViewAlignment.Right); this.ItemContainer.ResetValue(RadElement.MinSizeProperty, ValueResetFlags.Animation); this.ItemContainer.MinSize = new Size(this.ExpandedPaneWidth, 0); this.ItemContainer.MaxSize = Size.Empty; foreach (RadPageViewItem item in this.Items) { item.DrawText = true; } if (this.Popup.ElementTree.RootElement.ElementState != ElementState.Loaded) { Size size = new Size(this.ExpandedPaneWidth, (int)this.DesiredSize.Height); this.Popup.LoadElementTree(size); } ApplyThemeToPopup(this.ElementTree, this.Popup); this.Popup.Size = new Size(this.ExpandedPaneWidth, (int)this.DesiredSize.Height); this.Popup.DropDownAnimationDirection = this.RightToLeft ? RadDirection.Left : RadDirection.Right; this.Popup.HorizontalPopupAlignment = this.RightToLeft ? HorizontalPopupAlignment.RightToRight : HorizontalPopupAlignment.LeftToLeft; this.Popup.VerticalPopupAlignment = VerticalPopupAlignment.TopToBottom; this.Popup.RootElement.BackColor = this.BackColor; this.Popup.Show(this.PointToScreen(this.RightToLeft ? new Point(this.Bounds.Right, this.Bounds.Top) : new Point(this.Bounds.Left, this.Bounds.Top))); } } public override void Collapse() { if (this.IsCollapsed) { return; } FieldInfo pi = typeof(RadPageViewNavigationViewElement).GetField("isCollapsed", BindingFlags.NonPublic | BindingFlags.Instance); pi.SetValue(this, true); foreach (RadPageViewItem item in this.Items) { item.DrawText = false; } NavigationViewDisplayModes mode = this.GetEffectiveDisplayMode(this.Size.Width); if (mode == NavigationViewDisplayModes.Expanded) { this.ItemContainer.MinSize = new Size(this.CollapsedPaneWidth, 0); } else { FieldInfo fi = typeof(RadPageViewNavigationViewElement).GetField("programmaticallyClosingPopup", BindingFlags.NonPublic | BindingFlags.Instance); fi.SetValue(this, true); this.Popup.ClosePopup(RadPopupCloseReason.Mouse); this.HamburgerButton.StretchHorizontally = false; fi = typeof(RadPageViewNavigationViewElement).GetField("programmaticallyClosingPopup", BindingFlags.NonPublic | BindingFlags.Instance); fi.SetValue(this, false); if (mode == NavigationViewDisplayModes.Compact) { this.ItemContainer.MinSize = new Size(this.CollapsedPaneWidth, 0); this.ItemContainer.MaxSize = new Size(this.CollapsedPaneWidth, 0); if (!this.Children.Contains(this.ItemContainer)) { this.Popup.RootElement.ResetValue(RadItem.BackColorProperty, ValueResetFlags.Local); this.Children.Insert(0, this.ItemContainer); } } if (!this.Children.Contains(this.HamburgerButton)) { this.HamburgerButton.ResetValue(AlignmentProperty, ValueResetFlags.Local); this.Children.Add(this.HamburgerButton); } } } }