我正在为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是将这些文本块移动到下一个位置的故事板。请帮帮我
答案 0 :(得分:1)
Put&#34;等待&#34;在Task.Delay(50);
之前await System.Threading.Tasks.Task.Delay(50);
否则,您实现了一个无限循环,并且应用程序没有响应,因为您正在刻录CPU: - )