Пример #1
0
        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());
                }
            }
        }