0
我的Windows Phone 7.1深化发展,我必须做一些Web服务调用来获得一个JSON字符串,我用下面的代码(即到类):如何在Windows手机进行Web服务调用
public void GetRegions()
{
if (!_wc.IsBusy)
{
_wc.DownloadStringAsync(new Uri("http://lapiazzashopping.it/test/mobile/getRegions.php"));
_wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted_Regions);
}
}
private void wc_DownloadStringCompleted_Regions(object sender, DownloadStringCompletedEventArgs e)
{
Debug.WriteLine("Web service says: " + e.Result);
Regions = JsonConvert.DeserializeObject<IList<Regions>>(e.Result);
}
现在在这个调用之后,我想更改显示从json获取结果的页面。如果我通过按钮启动调用,并且此按钮与页面更改相同,编译器将更改页面,但调用尚未完成,因为我无法管理方法“wc_DownloadStringCompleted_Regions” 此方法由编译器在结束通话,所以我的问题是,我无法知道通话何时完成,我无法知道何时在适当的时候更改页面。
有什么解决方案可以让我“暂停”代码,直到调用和反序列化完成?
感谢