summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Platform.WP8
diff options
context:
space:
mode:
authorE.Z. Hart <hartez@users.noreply.github.com>2016-05-04 08:22:34 -0600
committerRui Marinho <me@ruimarinho.net>2016-05-04 15:22:34 +0100
commita8acdcc11793c9f44098f2cd478d51677d742945 (patch)
tree811cf1ee2e2ff0baa8674f116b6b5c08590f56cf /Xamarin.Forms.Platform.WP8
parent8d383746caab00dd3ee0b62dc992a2a99c7a6d06 (diff)
downloadxamarin-forms-a8acdcc11793c9f44098f2cd478d51677d742945.tar.gz
xamarin-forms-a8acdcc11793c9f44098f2cd478d51677d742945.tar.bz2
xamarin-forms-a8acdcc11793c9f44098f2cd478d51677d742945.zip
Add IMasterDetailPageController and update renderers (#146)
Diffstat (limited to 'Xamarin.Forms.Platform.WP8')
-rw-r--r--Xamarin.Forms.Platform.WP8/MasterDetailRenderer.cs10
1 files changed, 6 insertions, 4 deletions
diff --git a/Xamarin.Forms.Platform.WP8/MasterDetailRenderer.cs b/Xamarin.Forms.Platform.WP8/MasterDetailRenderer.cs
index 43796d92..25ca8465 100644
--- a/Xamarin.Forms.Platform.WP8/MasterDetailRenderer.cs
+++ b/Xamarin.Forms.Platform.WP8/MasterDetailRenderer.cs
@@ -20,6 +20,8 @@ namespace Xamarin.Forms.Platform.WinPhone
AutoPackage = false;
}
+ IMasterDetailPageController MasterDetailPageController => Element as IMasterDetailPageController;
+
public bool Visible { get; private set; }
protected override System.Windows.Size ArrangeOverride(System.Windows.Size finalSize)
@@ -33,10 +35,10 @@ namespace Xamarin.Forms.Platform.WinPhone
base.OnElementChanged(e);
if (e.OldElement != null)
- e.OldElement.BackButtonPressed -= HandleBackButtonPressed;
+ ((IMasterDetailPageController)e.OldElement).BackButtonPressed -= HandleBackButtonPressed;
if (e.NewElement != null)
- e.NewElement.BackButtonPressed += HandleBackButtonPressed;
+ ((IMasterDetailPageController)e.NewElement).BackButtonPressed += HandleBackButtonPressed;
LoadDetail();
LoadMaster();
@@ -170,8 +172,8 @@ namespace Xamarin.Forms.Platform.WinPhone
var platform = Element.Platform as Platform;
Size screenSize = platform.Size;
- Element.MasterBounds = new Rectangle(0, 0, screenSize.Width - 20, screenSize.Height - 20);
- Element.DetailBounds = new Rectangle(0, 0, width, height);
+ MasterDetailPageController.MasterBounds = new Rectangle(0, 0, screenSize.Width - 20, screenSize.Height - 20);
+ MasterDetailPageController.DetailBounds = new Rectangle(0, 0, width, height);
_popup.Width = width - 20;
_popup.Height = height - 20;