不解,求高手来点拨

zhujiazhi 2010-05-20 11:54:57
在页面里面
Popup popup = new Popup();
Grid grid = new Grid();
PopupMessageBox popupMsgBox = new PopupMessageBox();//一个页面,用来显示信息
grid.Width = Application.Current.Host.Content.ActualWidth;
grid.Height = Application.Current.Host.Content.ActualHeight;
grid.Children.Add(popupMsgBox);
popup.Child = grid;
popup.IsOpen = true;
用来显示一个popup

popup.IsOpen = false;
关闭这个popup以后,这个popup里面的grid以及grid里面的PopupMessageBox会消失嘛
还会存在内存里面嘛?
不知道有没有说的清楚的,希望高手指点
...全文
121 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jv9 2010-05-21
  • 打赏
  • 举报
回复
从你的应用来看popup关闭后,PopupMessageBox和Grid仍旧会占有内存。不知道你具体popup类是如何定义的,从目前代码看,关闭popup,如果只是隐藏,没有回收内存。
zhujiazhi 2010-05-21
  • 打赏
  • 举报
回复
还不是太清楚的
blackant2 2010-05-21
  • 打赏
  • 举报
回复
PopupMessageBox popupMsgBox = new PopupMessageBox();//一个页面,用来显示信息
的有效域比如包含定义使用了它的方法消失之后,它就处于可回收状态,但并没有被回收
真到GC对它感兴趣了,它才会从内存中释放
zhujiazhi 2010-05-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jv9 的回复:]
从你的应用来看popup关闭后,PopupMessageBox和Grid仍旧会占有内存。不知道你具体popup类是如何定义的,从目前代码看,关闭popup,如果只是隐藏,没有回收内存。
[/Quote]

Popup不是我定义的,是sl自带的,上面那段代码是一个button的click事件的,如果没有回收内存,再次点击的时候又会重新生成,这样应该就消耗内存的,不知道该如何释放以前占用的内存的
刚接触sl的,感觉好多东西都不明白

8,734

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧