一定的相关性这个话题在这里: Async XML Reading in Windows Phone 7如何从一个xaml页面导航到另一个,并传递值?
我正在开发一个Windows Phone应用程序,和我在我的Search.xaml.cs文件中的搜索功能。它是通过点击一个按钮调用,它会创建一个搜索查询与和它调用DownloadStringInBackground
private void SearchQuery(object sender, EventArgs e)
{
string temp = "http://api.search.live.net/xml.aspx?Appid=myappid&query=randomqueryhere&sources=web";
DownloadStringInBackground(temp);
}
public static void DownloadStringInBackground(string address)
{
WebClient client = new WebClient();
Uri uri = new Uri(address);
client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadStringCallback);
client.DownloadStringAsync(uri);
}
private static void DownloadStringCallback(Object sender, DownloadStringCompletedEventArgs e)
{
// Fancy manipulation logic here
finalResult = words;
}
finalResult已经被存储为
public static string[] finalResult;
在搜索类
。我的问题是,我可以在哪里放置Navigate命令(NavigationService.Navigate(new Uri(“/ Result.xaml”,UriKind.Relative));)?我试图在回调中做这件事,但由于static关键字,我得到一个nullobject异常。我如何确保已经填充了finalResult,并且可以导航到Result.xaml并在该页面上的finalResult中引用数据。或者,我如何将Words或finalResult传递给Result.xaml?
为寻找谢谢:)
所以事实证明,我正在以错误的方式解决我的问题。正确的方法在这里:http://www.jaylee.org/post/2010/06/22/WP7Dev-Using-the-WebClient-with-Reactive-Extensions-for-Effective-Asynchronous-Downloads.aspx I我希望Mick的答案是正确的,因为这是我原来的问题的答案。感谢大家。 IMO – Freakishly 2010-12-16 09:27:53
最好的解决办法: http://stackoverflow.com/questions/4701566/passing-a-complex-object-to-a-page-while-navigating-in-a-wp7-silverlight-applica/15536127 #15536127 – radsdau 2013-03-20 22:44:14