• 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实例,就不会出现内存暴涨的问题,  有知道的同学么?

  • 相关阅读:
    回顾[2007-09-03 12:58:03]
    关于知音[2007-08-17 20:56:06]
    今天晚上吃散伙饭[2007-06-18 00:24:36]
    上次所料不错[2007-06-13 15:44:47]
    今天真没劲[2007-06-10 17:50:25]
    关于昨晚的梦[2007-05-07 12:12:06]
    iOS 自定义键盘
    iOSQuart2D绘图之UIImage简单使用
    iOS 两种不同的图片无限轮播
    iOS 简单引导界面
  • 原文地址:https://www.cnblogs.com/wandd/p/2762105.html
Copyright © 2020-2023  润新知