0

我正在开发一个 Windows Phone7 应用程序,其中我有两个应用程序栏按钮,单击时都会对 Web 进行异步调用,并且将在 Web 响应时执行回调。

现在我的问题是,如果我单击一个按钮并且异步操作在后台进行,同时如果我单击另一个按钮,则两个回调都将一个接一个地执行,这显然是不好的。谁能帮我解决这个问题???

首先,我想在 1 Async 操作进行时禁用其他按钮。但它并没有给用户带来良好的感觉。那么处理这个问题的最佳方法是什么?

4

2 回答 2

1

您可以使用 Flag 变量并在异步调用完成方法中检查其值。根据您的要求,您可以选择更新或不更新视图。

于 2011-06-06T13:02:53.210 回答
0

我一直在寻找相同的答案。

我找到了解决方案,如果你在这样的构造函数中初始化一个对象,当你调用一个服务函数时,你会得到多个循环:

public partial class MainPage : PhoneApplicationPage
{
MovieServiceClient mov;

public MainPage()
{
mov = new MovieServiceClient(); //Don't do this.
InitializeComponent();

}
}

避免这种情况。

于 2012-12-18T20:21:47.167 回答