WP7 弹出窗口在 thread.sleep 之前显示,但直到之后才出现

发布于 2024-10-08 20:35:36 字数 422 浏览 0 评论 0原文

我目前正在使用 Thread.Sleep(2500) 在模拟层中模拟网络调用,直到我们可以连接到 Web 服务。我创建了一个带有进度条的弹出窗口(是的,我正在使用 Jeff Wilcox 的进度条),基于 此示例,并已成功显示弹出窗口。但是,我遇到了一个问题,即当我在使用 Thread.Sleep() 后调用弹出窗口时,弹出窗口不会加载。直到 Thread.Sleep() 返回后才会出现进度条。我正在尝试让它在即将到来的演示中工作,所以我想弄清楚如何使它与 Thread.Sleep() 一起工作,而不是等待服务并希望它在那里工作。

I'm currently using Thread.Sleep(2500) to simulate a network call in a mock layer until we can connect to the web services. I have a created a popup with a progress bar (yes, I am using Jeff Wilcox's progress bar) based on this example, and have gotten the popup to appear successfully. However, I am running into an issue where the popup doesn't load when I call it after using Thread.Sleep(). The progress bar does not appear until after Thread.Sleep() returns. I'm trying to get this working for an upcoming demo, so I'd like to figure out how to make it work with Thread.Sleep() instead of waiting for the services and hoping it works there.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蓝天 2024-10-15 20:35:36

您的 Thread.Sleep 正在使 UI 线程休眠,这会阻止弹出窗口在您的方法返回之前显示。您需要使用 DispatcherTimer 类在经过一段 TimeSpan 后在 UI 线程上进行回调,或者创建一个执行睡眠操作的新线程。

当您确实进行网络操作时,这是一个很好的教训:不要阻塞 UI 线程。

Your Thread.Sleep is sleeping the UI thread which is preventing the popup from being displayed until after your method returns. You need can either use the DispatcherTimer class to get a call back on the UI thread after some TimeSpan has elapsed, or create a new thread which does the sleep.

This is a good lesson for when you do have network operations: don't block the UI thread.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文