我有一个简单的WP8应用程序有2页。在MainPage中,用户可以导航到Page2以查看网络中的几个图像。为此,我使用WebClient
WebClient myWebClient;
myWebClient = new WebClient();
myWebClient.DownloadStringAsync(mywebsite);
myWebClient.DonwloadStringCompleted += new DownloadStringCompletedEventHandler(myWebClient_Completed);
除此之外,我在StackPanel中显示图像,这些图像包含在ScrollViewer中,看起来像这样
<ScrollViewer>
<StackPanel x:Name= myPanel/>
</ScrollViewer>
当我尝试在页面之间来回导航时,应用程序会在几次后崩溃。我相信这是一个内存泄漏。 我的问题是:在离开Page2时需要完成哪些步骤? 我试图解开事件处理程序:
myWebClient.DonwloadStringCompleted -=myWebClient_Completed;
并尝试从StackPanel中释放图像:
foreach(var theImage in myPanel.Children){
theImage.Source=null;
}
但这没用。我错过了什么?或者语法不对? 提前感谢您的帮助。