Windows phone 如何使用webclient和下载windows phone 8
我有一个从服务器获取对象的类GetInfo,Page1.xaml,Page2.xaml。我要将对象值从第1页传输到第2页 这是我的密码 类获取信息 } 类Page1.cs// 我知道DownloadStringCompleted在事件LayoutRoot\u加载完成时调用。问题是,如果加载的LayoutRoot\u未完成,我无法移动到第2页。 我需要解决这个问题的办法Windows phone 如何使用webclient和下载windows phone 8,windows-phone,Windows Phone,我有一个从服务器获取对象的类GetInfo,Page1.xaml,Page2.xaml。我要将对象值从第1页传输到第2页 这是我的密码 类获取信息 } 类Page1.cs// 我知道DownloadStringCompleted在事件LayoutRoot\u加载完成时调用。问题是,如果加载的LayoutRoot\u未完成,我无法移动到第2页。 我需要解决这个问题的办法 谢谢 那么,为什么不将调用移动到NavigationService.NavigationService?在webclient的D
谢谢 那么,为什么不将调用移动到NavigationService.NavigationService?在webclient的DownloadStringCompleted事件中导航?我已经尝试过,但错误是非静态字段、方法或属性“System.Windows.Navigation.NavigationService.NavigatesSystem.Uri”需要对象引用
Class GetInfo{
Info use_info; //(Info is class)
public GetInfo(Info user_info)
{
this.user_info = user_info;
}
public void UseWebClient()
{
var client = new WebClient();
client.DownloadStringCompleted += (sender, e) =>
{
if (!string.IsNullOrEmpty(e.Result))
getInfo(e.Result);
};
client.DownloadStringAsync(new Uri("http://example.com/user_info.php?id=1"));
}
void getInfo()
{
I will Parse JSon string get from server become Info object...
}
Info user_info;
GetInfo userInfo;
public Page1()//constructor
{
userInfo = new GetInfo(user_info);
}
private void LayoutRoot_Loaded(object sender, RoutedEventArgs e)
{
userInfo.UseWebClient();
//THIS IS PROBLEM
if(user_info.name != null) //name is public properties;
{
PhoneApplicationService.Current.State["user_info"] = user_info;
NavigationService.Navigate(new Uri("/Page2.xaml", UriKind.Relative));
}
else
{
MessageBox.Show("Check Connect!", "Warning", MessageBoxButton.OK)
if(result == MessageBoxResult.OK)
Application.Current.Terminate();
}
}