summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core/NavigationMenu.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Core/NavigationMenu.cs')
-rw-r--r--Xamarin.Forms.Core/NavigationMenu.cs14
1 files changed, 13 insertions, 1 deletions
diff --git a/Xamarin.Forms.Core/NavigationMenu.cs b/Xamarin.Forms.Core/NavigationMenu.cs
index 2386dd29..2283bd51 100644
--- a/Xamarin.Forms.Core/NavigationMenu.cs
+++ b/Xamarin.Forms.Core/NavigationMenu.cs
@@ -7,10 +7,17 @@ namespace Xamarin.Forms
{
// Mark as internal until renderers are ready for release after 1.0
[RenderWith(typeof(_NavigationMenuRenderer))]
- internal class NavigationMenu : View
+ internal class NavigationMenu : View, IElementConfiguration<NavigationMenu>
{
readonly List<Page> _targets = new List<Page>();
+ readonly Lazy<PlatformConfigurationRegistry<NavigationMenu>> _platformConfigurationRegistry;
+
+ public NavigationMenu()
+ {
+ _platformConfigurationRegistry = new Lazy<PlatformConfigurationRegistry<NavigationMenu>>(() => new PlatformConfigurationRegistry<NavigationMenu>(this));
+ }
+
public IEnumerable<Page> Targets
{
get { return _targets; }
@@ -52,6 +59,11 @@ namespace Xamarin.Forms
}
}
+ public IPlatformElementConfiguration<T, NavigationMenu> On<T>() where T : IConfigPlatform
+ {
+ return _platformConfigurationRegistry.Value.On<T>();
+ }
+
internal void SendTargetSelected(Page target)
{
TargetSelected(target);