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: