title: Coding4Fun MessagePrompt not displayed when app is on the splash screen
body: <p>I am using coding4fun message prompt in my app to display message box with customized buttons to the user. It works fine when the app is in the foreground and there is a message to be displayed. But, When I exit the app and re-launch it there are a set of things happening when after app's splash screen is displayed and before the main screen of the app is shown. During this process the app checks if any upgrade is available, if there are upgrades then on the splash screen the message box must be displayed to the user. When i was previously using xna framework message box this worked well, but due to marketplace submission process I replaced xna framework message box with coding4fun message prompt and the message prompt doesn't show when splash screen is displayed. Is this how Coding4Fun message prompt works or am i doing something wrong?</p>
  
  <p>here is how i have implemented the message prompt in my code..</p>
  
  <pre><code>  public MainPage()
      {
       System.Windows.Deployment.Current.Dispatcher.BeginInvoke(() =&gt;
        {
          DataManager.getInstance().setUIListener(this);
          if (checkUpgradeStatus())
          {
              return;
          }
        });
      }
  
      private bool checkUpgradeStatus()
      {
          try
          {
              string flag = "1";
              if (!Utils.isNullString(flag))
              {
                  DataManager.getInstance().CheckForUpgrade();
                  if (flag.Equals(CacheManager.MAJOR_UPGRADE))
                  {
                      customizedMessageBox(Utils.APP_UPGRADE_CONFIRM, CustomizedMessageBox.APP_UPGRADE_CONFIRM_TITLE, AppResources.APP_UPGRADE_CONFIRM);
                      DataManager.getInstance().UpdateBadge(true);
                      return true;
                  }
                  else if (flag.Equals(CacheManager.MINOR_UPGRADE))
                  {
                      CacheManager.getInstance().writeDataToConfigFile(CacheManager.APP_UPGRADE_STATUS, "0");
                      customizedMessageBox(Utils.APP_MINOR_UPGRADE_CONFIRM, CustomizedMessageBox.APP_MINOR_UPGRADE_CONFIRM_TITLE, AppResources.APP_UPGRADE_MINOR_CONFIRM);
                      DataManager.getInstance().UpdateBadge(true);
                      return false;
                  }
              }
              CacheManager.getInstance().writeDataToConfigFile(CacheManager.APP_UPGRADE_STATUS, "0");
              return false;
          }
          catch (Exception ex)
          {
              Logger.log(TAG, ":checkUpgradeStatus():" + ex.Message);
              return false;
          }
      }
  
      public void customizedMessageBox(int messageboxtype, string title, string text)
      {
          try
          {
              switch (messageboxtype)
                  {
                  Case 6:
                   messageBox = new MessagePrompt();
                                  Button btnMinorUpgrade = new Button();
                                  btnMinorUpgrade.Content = "Upgrade";
                                  messageBox.ActionPopUpButtons.Add(btnMinorUpgrade);
                                  btnMinorUpgrade.Click += new RoutedEventHandler(btnMinorUpgrade_Click);
                                  Button btnMinorUpgradeCancel = new Button();
                                  btnMinorUpgradeCancel.Content = "Cancel";
                                  messageBox.ActionPopUpButtons.Add(btnMinorUpgradeCancel);
                                  btnMinorUpgradeCancel.Click += new RoutedEventHandler(btnMinorUpgradeCancel_Click);
                                  messageBox.Show();
                  break;
                  }
          }
          catch (Exception ex)
          {
            Logger.log(TAG, ":customizedMessageBox():" + ex.Message);
          }
  
      }
  </code></pre>
  
  <p>NOTE*:- For testing purpose I have hard-coded flag's value to "1".
  All the answers and suggestions appreciated.</p>
  
  <p>Thank you</p>