消息框影响我的程序

时间:2015-09-06 06:47:33

标签: c# windows-8 windows-store-apps

我正在为Windows 8制作一款游戏作为地铁应用程序。当我执行以下代码而不显示消息框时,它根本没有响应。当我显示消息框时,整个代码工作正常。问题是什么?任何人都可以帮助我吗?

public async void move()
    {
        Random rand = new Random();
        int i = 0;

        while (i<5)
        {
            Anim.Begin();
            int n = rand.Next(97, 123);
            char ch = (char)n;

            textBlock10.Text =textBlock9.Text;

            textBlock9.Text = textBlock8.Text;
            textBlock8.Text = textBlock7.Text;
            textBlock7.Text = textBlock6.Text;
            textBlock6.Text = textBlock5.Text;
            textBlock5.Text = textBlock4.Text;
            textBlock4.Text = textBlock3.Text;
            textBlock3.Text = textBlock2.Text;
            textBlock2.Text = textBlock1.Text;
            textBlock1.Text = textBlock.Text;
            textBlock.Text = ch.ToString();

            /*MessageDialog msg = new MessageDialog("test");
            msg.Commands.Add(new UICommand("ÿes", null, "YES"));
            msg.Commands.Add(new UICommand("no", null, "NO"));
            var op = await msg.ShowAsync();//Showing the message
            if ((string)op.Id == "YES")
                this.Frame.Navigate(typeof(MainPage), null);
            */System.Threading.Tasks.Task.Delay(50);
            Anim.Stop();
        }
    }

上述功能用于使用文本块将数据从一个点移动到屏幕上的另一个点。 Anim是将这些文本块移动到下一个位置的故事板。请帮帮我

1 个答案:

答案 0 :(得分:1)

Put&#34;等待&#34;在Task.Delay(50);

之前
await System.Threading.Tasks.Task.Delay(50);

否则,您实现了一个无限循环,并且应用程序没有响应,因为您正在刻录CPU: - )