我有一個大項目,我的應用程序一直保留着我導航的頁面。該頁面只使用最少的,並有很多圖形,因此我希望它完全從內存中刪除。刪除頁面windows手機
因此,我用下面的
NavigationService.RemoveBackEntry();
使用我看到的是,上面的代碼中確信,我只會在頁面的1個實例剖析。但是,由於圖形很重,我仍然希望將它從內存中完全刪除,即分析器中沒有實例。
在我的大應用程序中,我嘗試退訂所有事件,引入dispose/finalize和調用GC,它幫助了一些,但實例仍然存在。
爲了排除任何愚蠢的錯誤,我做了this small sample。只使用內存彈出檢查器在兩個啞頁之間導航。但仍然存在1-2個頁面實例。有沒有辦法強制刪除頁面,以免它們存儲在內存中?
我說:
while (App.RootFrame.RemoveBackEntry() != null) ;
到OnNavigated到,並刪除除了第一頁我開始上的所有網頁。我已經使用了調試分析工具箱,並且可以看到,無論我從哪開始的第一頁都不會被刪除,當我離開它時。
也許看看http://www.jayway.com/2012/05/25/清空窗口8頁緩存/ – JTIM 2015-02-08 12:55:58
似乎並不工作 – JonasN89 2015-02-08 13:28:47
想知道如果您已嘗試將該頁面的「NavigationCacheMode」設置爲「Disabled」? – 2015-02-18 00:21:45