zoukankan      html  css  js  c++  java
  • wpf 中frame控件的使用内存溢出的处理方法

    frame控件相当于一个嵌套在程序里的浏览器一样,它可以展示page类实例,拥有导航UI,可以通过NavigationUIVisibility属性来控制导航UI的可见性。

      在做应用程序开发的时候发现,我把NavigationUIVisibility设为hidden了,在程序多点几个按钮是发现内存在不断上涨。(按钮的左右是展示不同page),后来发现,是frame控件在作怪,当一个新的page载入时,它不会把前面的page给释放掉,而是放在ui导航里

          就像这样。

    多点几个按钮就会发现,内存在不断的上涨,直到程序奔溃。

    一开始的设想是找方法设置存在导航里的page数目数目,可是没有找到这个属性。                希望知道的通知可以告知,O(∩_∩)O!

     后来就差MSDN发现,frame有一个RemoveBackEntry()方法,可以把历史导航里的前一条记录给删掉,这样就OK了,在每次载入一个page时,加入一个RemoveBackEntry()语句,就可以把前面记录的page删掉,这样内存就不会上涨了。

    也许可以有其他控件承载PAGE实例,就不会出现内存暴涨的问题,  有知道的同学么?

  • 相关阅读:
    J
    I
    uva122 二叉树的实现和层次遍历(bfs)
    A
    HDU 波峰
    2239: 童年的圣诞树
    1734: 堆(DFS)
    1731: 矩阵(前缀和)
    1733: 旋转图像(模拟)
    1728: 社交网络(概率问题 组合数/排列数)
  • 原文地址:https://www.cnblogs.com/wandd/p/2762105.html
Copyright © 2011-2022 走看看