0

在引导程序中,我有两种观点。使用 IRegionManager,我在第一个和第二个视图之间导航。

第一个视图包含一个搜索框。用户键入一个字符串,单击搜索。第一个视图将字符串传递给第二个视图。第二个视图使用此字符串调用服务以获取项目列表。

到目前为止一切正常,但我想让这个异步(也添加一个 ProgressIndicator)。也就是说,当用户单击搜索按钮时,我不希望应用程序锁定。

我希望应用程序的行为如下:

  1. 用户输入一个搜索字符串,然后点击搜索(我已经实现了。)
  2. 用户应该保持在第一个视图上,进度条可见(我已经实现了。)
  3. 在后台,搜索应该对数据库进行异步调用。(实施的)
  4. 从服务返回结果后,视图应更改为带有结果的第二个视图。(我无法实现这一点)

如何实现第 4 步行为?

4

1 回答 1

0

有几种不同的方法可以异步调用服务。在可用的选项中,我建议使用.NET 4.5BackgroundWorker来处理大部分脏活,或者使用Task.NET 4.5 的新功能。

对于,您可以在此答案BackgroundWorker中找到一个简单的示例,您还可以通过搜索找到更多示例。

对于,您可以在此处的 MSDNTask上阅读它,并通过简单的网络搜索找到许多示例。

于 2013-05-01T02:49:08.197 回答