我在WP7开发期间找到了一个常见的模式。
需要很长时间才能显示,我想将显示分为两部分 - 初始显示,这样我就可以显示正在加载的消息并启动进度条,然后是辅助显示,我可以在其中加载数据。
目前我正在尝试在自定义控件中执行此操作,但它同样适用于用户控件或页面。
我找不到这样做的方法。回到WinForm时代,我可以在表单显示之前调用其他事件,其他事件则在之后。我想我正在寻找类似的东西。
我还试图看看我是否可以首先使用“加载”消息显示堆栈面板,然后在其上捕获一个事件来触发数据加载但到目前为止没有任何内容。
有什么想法吗?
我正在使用Caliburn Micro BTW。
答案 0 :(得分:2)
您可以使用页面的Loaded
事件或OnNavigatedTo
覆盖来显示正在加载的消息,然后您可以使用BackgroundWorker
class在后台线程上运行长时间运行的进程以便UI线程保持响应,然后在RunWorkerCompletedEvent
处理程序的处理程序中,为您编组到UI线程上,您可以隐藏加载消息并执行第二阶段显示。