A rating reminder control that can be placed on any Xaml page.
Inheritance: Control
        // Constructor
        public ItemsShowcaseView()
        {
            InitializeComponent();
            
            DataContext = new ItemsShowcaseViewModel();
            // Sample code to localize the ApplicationBar
            //BuildLocalizedApplicationBar();
            SearchBox.TextChanged += SearchBox_TextChanged;
            Loaded += ItemsShowcaseView_Loaded;

            if (AppSettings.EnablePhoneBackground8X == true)
            {
                LayoutRoot.Background = Application.Current.Resources["WallPaperBrush"] as ImageBrush;
                LayoutRoot.Background.Opacity = .5;
            }

            if (AppSettings.EnableAppPromoRatingReminder)
            {
                RateReminder rateReminder = new RateReminder();
                rateReminder.RunsBeforeReminder = AppSettings.NumberOfRunsBeforeRateReminder;
                LayoutRoot.Children.Add(rateReminder);
            }

            if (AppSettings.EnablePubcenterAdsPhone8)
            {
                if (AppSettings.HideAdsIfPurchasedPhone8)
                    if (!licenseInfo.IsTrial())
                        return;

                var advertisingControlPlaceholder = new RowDefinition();
                advertisingControlPlaceholder.Height = new GridLength(80);
                LayoutRoot.RowDefinitions.Add(advertisingControlPlaceholder);
                var appbarSpacer = new RowDefinition();
                appbarSpacer.Height = new GridLength(30);
                LayoutRoot.RowDefinitions.Add(appbarSpacer);
                AdControl adControl = new AdControl(AppSettings.PubcenterApplicationIdPhone8, AppSettings.PubcenterAdUnitIdPhone8, true);
                adControl.Width = 480;
                adControl.Height = 80;
                Grid.SetRow(adControl, 2);
                LayoutRoot.Children.Add(adControl);
            }
        }
        public ItemsShowcaseView()
        {
            this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Enabled;
            this.InitializeComponent();
            SettingsPane.GetForCurrentView().CommandsRequested += ShowPrivacyPolicy;
            DataTransferManager.GetForCurrentView().DataRequested += ShareLinkHandler;
            Loaded += ItemsShowcaseView_Loaded;

            if (AppSettings.EnableBackgroundWin8X == true)
            {
                ShowcaseGrid.Background = Application.Current.Resources["WallPaperBrush"] as ImageBrush;
            }

            if (AppSettings.EnableAppPromoRatingReminder)
            {
                RateReminder rateReminder = new RateReminder();
                rateReminder.RunsBeforeReminder = AppSettings.NumberOfRunsBeforeRateReminder;
                ShowcaseGrid.Children.Add(rateReminder);
            }

        }
        //Todo
        //AdControl adControl = new AdControl();

        public ItemsShowcaseView()
        {
            this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Enabled;
            Loaded += ItemsShowcaseView_Loaded;
            this.InitializeComponent();
#if WINDOWS_APP
            if (AppSettings.EnableBackgroundWin8X == true)
            {
                ShowcaseGrid.Background = Application.Current.Resources["WallPaperHorizontalBrush"] as ImageBrush;
            }
#endif
#if WINDOWS_PHONE_APP
            if (AppSettings.EnablePhoneBackground8X == true)
            {
                if (AppSettings.EnableSingleVerticalLayoutPhone81)
                    ShowcaseGrid.Background = Application.Current.Resources["WallPaperVerticalBrush"] as ImageBrush;
                else
                {
                    ShowcaseGrid.Background = Application.Current.Resources["WallPaperVerticalBrush"] as ImageBrush;
                    HubControl.Background = Application.Current.Resources["WallPaperHorizontalBrush"] as ImageBrush;
                }

                ShowcaseGrid.Background.Opacity = .5;
            }

            if (!AppSettings.EnableSingleVerticalLayoutPhone81)
            {
                titlePanel.Margin = new Thickness(0, 30, 0, 0);
                ZoomedOutGroupGridView.Margin =  new Thickness(12);
                ZoomedOutGroupGridView.Background = (SolidColorBrush)Application.Current.Resources["ApplicationPageBackgroundThemeBrush"];

            }
#endif

            if (AppSettings.EnableAppPromoRatingReminder)
            {
                RateReminder rateReminder = new RateReminder();
                rateReminder.RunsBeforeReminder = AppSettings.NumberOfRunsBeforeRateReminder;
                ShowcaseGrid.Children.Add(rateReminder);
            }
        }