Пример #1
0
 private async static void Move(
     UserControl viewToMove,
     Thickness margin,
     SumoNinjaMonkey.Framework.Controls.PopupView.eCalloutAlign calloutAlign
     )
 {
     foreach (var child in PopupService._rootControl.Children)
     {
         if (child.GetType().Name == "PopupView")
         {
             PopupView pv = (PopupView)child;
             if (pv.MainContent.GetType().Name == viewToMove.GetType().Name)
             {
                 //pv.Margin = margin;
                 pv.Move(margin.Left, margin.Top);
                 pv.CalloutAlign = calloutAlign;
                 return;
             }
             ;
         }
     }
 }
Пример #2
0
        public async static void Show(
            UserControl viewToShow,
            UserControl toolbar,
            Brush accentPrimary,
            Brush accentSecondary,
            Brush foregroundTextBrush,
            Brush countdownBackgroundBrush,
            double timeToLive,
            Thickness margin,
            HorizontalAlignment horizontalAlignment = HorizontalAlignment.Center,
            VerticalAlignment verticalAlignment     = VerticalAlignment.Center,
            bool autoHide = false,
            double width  = 300,
            double height = 180,
            string button1ClickContent    = "",
            string button1ClickIdentifier = "",
            string button2ClickContent    = "",
            string button2ClickIdentifier = "",
            SumoNinjaMonkey.Framework.Controls.PopupView.eCalloutAlign calloutAlign = PopupView.eCalloutAlign.None,
            string button1MetroIcon   = "",
            double button1Rotation    = 0,
            string button2MetroIcon   = "",
            double button2Rotation    = 0,
            bool showPopupInnerBorder = true
            )
        {
            if (PopupService._rootControl != null)
            {
                DispatchedHandler invokedHandler = new DispatchedHandler(() =>
                {
                    if (PopupService._rootControl == null) //|| PopupService._rootControl.Visibility == Visibility.Visible)
                    {
                        //Move(viewToShow, margin, calloutAlign);

                        return;
                    }
                    PopupService._rootControl.Visibility = Visibility.Visible;
                    PopupView view = new PopupView(
                        viewToShow,
                        accentPrimary,
                        accentSecondary,
                        autoHide,
                        timeToLive,
                        button1ClickContent,
                        button1ClickIdentifier,
                        button2ClickContent,
                        button2ClickIdentifier,
                        width: width,
                        height: height,
                        button1MetroIcon: button1MetroIcon,
                        button1Rotation: button1Rotation,
                        button2MetroIcon: button2MetroIcon,
                        button2Rotation: button2Rotation,
                        toolbar: toolbar,
                        showInnerBorder: showPopupInnerBorder
                        );
                    view.ContentThickness    = new Thickness(0, 0, 0, 0);
                    view.HorizontalAlignment = horizontalAlignment;
                    view.VerticalAlignment   = verticalAlignment;
                    //view.Margin = margin;
                    view.BackgroundFill             = accentPrimary;
                    view.MessageTextForegroundColor = foregroundTextBrush;
                    view.CountdownBackgroundColor   = countdownBackgroundBrush;
                    view.Show(margin.Left, margin.Top);
                    view.CalloutAlign = calloutAlign;
                    view.OnClosing   += new EventHandler(PopupService.view_OnClosing);


                    PopupService._rootControl.Children.Add(view);
                });
                await PopupService._rootControl.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, invokedHandler);
            }
        }