private void PropagateMessage(object obj) { var message = "No view"; var orientation = obj as string; var statusRaw = Enum.Parse(typeof(OrientationStatus), orientation); if (statusRaw != null) { OrientationStatus status = (OrientationStatus)statusRaw; switch (status) { case OrientationStatus.None: break; case OrientationStatus.Horizontal: message = "This is a Wide Layout"; SetOrientationTemplate("HorizontalOrientationTemplate"); break; case OrientationStatus.Vertical: message = "Holding device vertically"; SetOrientationTemplate("VerticalOrientationTemplate"); break; default: break; } } Message = message; }
private void Bindable_SizeChanged(object sender, System.EventArgs e) { var view = sender as View; if (view != null) { bool isWide = view.Width > 400; if (isWide) { _orientationStatus = OrientationStatus.Horizontal; } else { _orientationStatus = OrientationStatus.Vertical; } if (OrientationCommand != null) { OrientationCommand.Execute(_orientationStatus.ToString()); } } }