3 types derived from ShellItem
Microsoft.Maui.Controls (3)
Shell\MenuShellItem.cs (1)
10 internal class MenuShellItem : ShellItem, IMenuItemController, IStyleSelectable
Shell\ShellItem.cs (2)
17 public class FlyoutItem : ShellItem 42 public class TabBar : ShellItem
1 instantiation of ShellItem
Microsoft.Maui.Controls (1)
Shell\ShellItem.cs (1)
223 result = new ShellItem();
86 references to ShellItem
Microsoft.Maui.Controls (86)
PlatformConfiguration\AndroidSpecific\ShellItem.cs (1)
3 using FormsElement = Maui.Controls.ShellItem;
Routing.cs (1)
42 foreach (var item in shell.Items)
Shell\IShellController.cs (3)
41 ShellNavigationState GetNavigationState(ShellItem shellItem, ShellSection shellSection, ShellContent shellContent, bool includeStack = true); 47 bool ProposeNavigation(ShellNavigationSource source, ShellItem item, ShellSection shellSection, ShellContent shellContent, IReadOnlyList<Page> stack, bool canCancel); 55 ReadOnlyCollection<ShellItem> GetItems();
Shell\RequestDefinition.cs (1)
46 public ShellItem Item { get; }
Shell\RouteRequestBuilder.cs (4)
20 public ShellItem Item { get; private set; } 115 case ShellItem item: 129 Item = Section.Parent as ShellItem; 147 Item = Section.Parent as ShellItem;
Shell\Shell.cs (29)
630 defaultValueCreator: bo => new ShellItemCollection { Inner = new ElementCollection<ShellItem>(((Shell)bo).InternalChildren) }); 793 ShellNavigationState IShellController.GetNavigationState(ShellItem shellItem, ShellSection shellSection, ShellContent shellContent, bool includeStack) 807 ShellItem shellItem = null; 816 case ShellItem i: 820 shellItem = s.Parent as ShellItem; 824 shellItem = c.Parent.Parent as ShellItem; 899 if (sender is ShellItem item) 906 bool IShellController.ProposeNavigation(ShellNavigationSource source, ShellItem shellItem, ShellSection shellSection, ShellContent shellContent, IReadOnlyList<Page> stack, bool canCancel) 931 var shellItem = CurrentItem; 945 ReadOnlyCollection<ShellItem> IShellController.GetItems() => ((ShellItemCollection)Items).VisibleItemsReadOnly; 1062 BindableProperty.Create(nameof(CurrentItem), typeof(ShellItem), typeof(Shell), null, BindingMode.TwoWay, 1223 ShellItem shellItem = null; 1236 var item = navRequest.Request.Item; 1266 foreach (var item in shellItems) 1268 if (item is ShellItem && ValidDefaultShellItem(item)) 1306 public ShellItem CurrentItem 1308 get => (ShellItem)GetValue(CurrentItemProperty); 1449 public IList<ShellItem> Items => (IList<ShellItem>)GetValue(ItemsProperty); 1641 if (oldValue is ShellItem oldShellItem) 1657 if (newValue is ShellItem newShellItem) 1673 var shellItem = (ShellItem)newValue; 1695 ShellItem currentItem = shell.CurrentItem; 1700 ShellItem item = items[i]; 1704 else if (root is ShellItem shellItem) 1757 ShellItem rootItem = null; 1782 (o) => rootItem = rootItem ?? o as ShellItem); 1958 case ShellItem shellItem:
Shell\ShellContent.cs (2)
235 shellSection.Parent is ShellItem shellItem && 321 if (shellContent.Parent?.Parent is ShellItem shellItem)
Shell\ShellFlyoutItemsManager.cs (1)
105 foreach (var shellItem in ShellController.GetItems())
Shell\ShellItem.cs (25)
56 public class ShellItem : ShellGroupItem, IShellItemController, IElementConfiguration<ShellItem>, IPropertyPropagationController, IVisualTreeElement 60 static readonly BindablePropertyKey ItemsPropertyKey = BindableProperty.CreateReadOnly(nameof(Items), typeof(ShellSectionCollection), typeof(ShellItem), null, 61 defaultValueCreator: bo => new ShellSectionCollection { Inner = new ElementCollection<ShellSection>(((ShellItem)bo).DeclaredChildren) }); 144 BindableProperty.Create(nameof(CurrentItem), typeof(ShellSection), typeof(ShellItem), null, BindingMode.TwoWay, 151 Lazy<PlatformConfigurationRegistry<ShellItem>> _platformConfigurationRegistry; 179 _platformConfigurationRegistry = new Lazy<PlatformConfigurationRegistry<ShellItem>>(() => new PlatformConfigurationRegistry<ShellItem>(this)); 206 internal static ShellItem CreateFromShellSection(ShellSection shellSection) 210 var current = (ShellItem)shellSection.Parent; 218 ShellItem result = null; 236 public static implicit operator ShellItem(ShellSection shellSection) 241 public static implicit operator ShellItem(ShellContent shellContent) => (ShellSection)shellContent; 243 public static implicit operator ShellItem(TemplatedPage page) => (ShellSection)(ShellContent)page; 245 public static implicit operator ShellItem(MenuItem menuItem) => new MenuShellItem(menuItem); 248 public IPlatformElementConfiguration<T, ShellItem> On<T>() where T : IConfigPlatform 287 var shellItem = (ShellItem)bindable; 363 ShellSection shellSection => (ShellItem)shellSection, 364 ShellContent shellContent => (ShellItem)shellContent, 365 TemplatedPage page => (ShellItem)page, 366 MenuItem menuItem => (ShellItem)menuItem, 375 /// Provides a debug view for the <see cref="ShellItem"/> class. 377 /// <param name="shellItem">The <see cref="ShellItem"/> instance to debug.</param> 378 private sealed class ShellItemDebugView(ShellItem shellItem) : BaseShellItemDebugView(shellItem)
Shell\ShellItemCollection.cs (3)
7 internal sealed class ShellItemCollection : ShellElementCollection<ShellItem> 11 public override void Add(ShellItem item) 27 (this[i] as ShellItem).Items.Add(item.Items[0]);
Shell\ShellNavigationManager.cs (5)
98 var shellItem = navigationRequest.Request.Item; 141 shellItem.SetValueFromRenderer(ShellItem.CurrentItemProperty, shellSection); 343 ShellItem shellItem, 481 ShellItem shellItem, 517 public static ShellNavigationState GetNavigationState(ShellItem shellItem, ShellSection shellSection, ShellContent shellContent, IReadOnlyList<Page> sectionStack, IReadOnlyList<Page> modalStack)
Shell\ShellSection.cs (6)
276 ShellItem ShellItem => Parent as ShellItem; 750 Parent as ShellItem, 780 Parent as ShellItem, 819 Parent as ShellItem, 1228 var shellItem = _owner.Shell.CurrentItem;
Shell\ShellUriHandler.cs (5)
717 public ShellItem Item { get; private set; } 746 case ShellItem item: 757 Item = Section.Parent as ShellItem; 771 Item = Section.Parent as ShellItem; 930 case ShellItem item: