如何在Windows Phone 7中创建确认对话框?

时间:2011-07-18 10:09:56

标签: windows-phone-7

如何在Windows Phone 7中创建确认对话框?

我有一个应用程序,我可以删除项目,但当有人点击删除时,我想给他一个确认对话框,他们可以点击'确认'或'中止'

我怎么能这样做?

4 个答案:

答案 0 :(得分:26)

你可以用这个:

if(MessageBox.Show("Are you sure?","Delete Item", MessageBoxButton.OKCancel) == MessageBoxResult.OK)  
{
 //Delete Sentences
}

显示如下对话框:

enter image description here

答案 1 :(得分:4)

这是我使用的方法。为了获得更好的用户体验和一致性,请考虑使用“删除”和“取消”而不是“确认”或“中止”。

    public static MessagePromptResult Show(string messageBoxText, string caption, string button1, string button2)
    {
        int? returned = null;
        using (var mre = new System.Threading.ManualResetEvent(false))
        {
            string[] buttons;
            if (button2 == null)
                buttons = new string[] { button1 };
            else
                buttons = new string[] { button1, button2 };

            Microsoft.Xna.Framework.GamerServices.Guide.BeginShowMessageBox(
                caption,
                messageBoxText,
                buttons,
                0, // can choose which button has the focus
                Microsoft.Xna.Framework.GamerServices.MessageBoxIcon.None, // can play sounds
                result =>
                {
                    returned = Microsoft.Xna.Framework.GamerServices.Guide.EndShowMessageBox(result);
                    mre.Set(); // could have done it all without blocking
                }, null);

            mre.WaitOne();
        }

        if (!returned.HasValue)
            return MessagePromptResult.None;
        else if (returned == 0)
            return MessagePromptResult.Button1;
        else if (returned == 1)
            return MessagePromptResult.Button2;
        else
            return MessagePromptResult.None;
    }

您需要在项目中添加对Microsoft.Xna.Framework.GamerServices的引用。

答案 2 :(得分:1)

您是否考虑过让用户“取消删除”项目,而不是要求用户确认删除?

虽然这可能需要更多的工作,但是当它在应用程序的上下文中有意义时,它可以带来更好的用户体验。

答案 3 :(得分:0)

如果确定/取消对您来说足够好,您可以坚持使用常规的MessageBox.Show

相关问题