1

ユーザーがWp7マンゴーをクリックして移動できるURLをメッセージボックスに表示したいと思います。これは可能ですか?はいの場合、どのように実装しますか?

私のメッセージボックスは次のようにコード化されています。

 public static void customizedMessageBox(int messageboxtype, string title, string text, IEnumerable<string> buttons, int focusbutton, MessageBoxIcon icon, AsyncCallback callback, object state)
    {
        if (!Guide.IsVisible)
        {
            try
            {
                ProgressBarControl.dismissProgressBar();
                Guide.BeginShowMessageBox(" ", text, buttons, focusbutton, MessageBoxIcon.None, callback, state);
                messageboxType = messageboxtype;
            }
            catch (GuideAlreadyVisibleException ex)
            {
                Logger.log("MsgBox", "Exception : messageboxtype: " + messageboxtype
                    + "\n" + ex.Message + "\n" + ex.StackTrace);
            }
        }
        //return messageboxtype;
    }
   public static void OnMessageBoxClosed(IAsyncResult ar)
    {
        int? dialogResult = Guide.EndShowMessageBox(ar);
        Game game;
        try
        {

            Logger.log("MsgBox", "result: " + dialogResult + " msg type: " + messageboxType);

            switch (messageboxType)
            {  case 7:
                    //ERROR E4000 case
                    switch (dialogResult)
                    {
                        case 0:

                            string url;
                            //url = CacheManager.getInstance().getApplicationSettings(CacheManager.APP_APK_UPGRADE_URI);
                            url = DataManager.URL_VALUE;
                            if (Utils.isNullString(url))
                            {
                                //url = CacheManager.getInstance().getUpgradeURL();
                            }
                            WebBrowserTask browse = new WebBrowserTask();
                            browse.URL = url;
                            browse.Show();
                            break;
                        default:
                            //delete data from the DB
                            ProgressBarControl.displayProgressBar(0, 10, AppResources.DOWNLOADING);
                            try
                            {
                                //byte[] data = (byte[])CacheManager.getInstance().getPersistanceData(Utils.MINOR_UPGRADE_DATA);
                                byte[] data = (byte[])CacheManager.getInstance().getDataFromDataFile();
                                if (data != null && data.Length > 0)
                                {
                                    DataManager.getInstance().processMyWidgetResponse(data);
                                    DataManager.getInstance().refresUI();
                                }
                            }
                            catch (Exception ex)
                            {
                            }
                            finally
                            {
                                //CacheManager.getInstance().deletaFromApplicationCache(Utils.MINOR_UPGRADE_DATA);
                            }

                            break;
                    }
                    break;

                default:
                    break;
            }
        }
        catch (Exception ex)
        {

            Logger.log(TAG, ex.Message);

        }
        finally
        {
             ProgressBarControl.dismissProgressBar();
        }
    }

私はこのようにメッセージボックスを呼んでいます:-

 UIListen.customizedMessageBox(Utils.ERROR_CODE_E4000, ERROR_FORCE_REGISTRATION, responseHeaders[HEADER_URL_NAME, 1], Utils.valuesOk, 0);
4

2 に答える 2

2

これを見てください:http://coding4fun.codeplex.com/

彼が作成したさまざまな種類のカスタム ダイアログ\メッセージ ボックスを調べます。これを参照として取得して独自のものを作成するか、既存のものを直接使用できます。

于 2012-07-05T11:54:12.017 に答える
0

ユーザーに正しいオプションを提供するカスタム画面または xaml ページを表示することを検討してください。必要なオプションを指定できます。ボタン等。

于 2012-07-05T09:01:19.330 に答える