WPF技巧(5)元素的加载与卸载(Loaded and Unloaded)
FrameworkElement有两个初始化和一个卸载事件
还是以代码来示例
一.Initialized
触发条件(元素拥有容器,并初始化)
当元素实例化以后并被加入到逻辑树中时会触发此事件,
此事件可以获取到元素的初始值
public Demo1() {InitializeComponent();panel = new StackPanel();Button btn = new Button();//触发Initializedbtn.Initialized += new EventHandler(btn_Initialized);btn.Content = "xx";//不触发Initializedpanel.Children.Add(btn); }private StackPanel panel;void btn_Initialized(object sender, EventArgs e) {}
二.Loaded
触发条件(处于逻辑树中(处于加载状态不一定是视觉化))
panelDemo处于视觉树中
当重新被添加到容器中时,此事件会重新触发
Button btn = new Button(); btn.Loaded += new RoutedEventHandler(btn_Loaded); panelDemo.Children.Add(btn);
三.Unloaded
处于视觉化状态下,并移除此元素则触发此事件
注意点:
在数据绑定的情况下,特别是TabControl这种控件,为提升效率(元素越多速度越慢),每次只会显示一个TabItem的Content,其他的不在视觉树中,那么只能操作逻辑树
转载于:https://www.cnblogs.com/Clingingboy/archive/2010/05/17/1737242.html
WPF技巧(5)元素的加载与卸载(Loaded and Unloaded)相关推荐
- jQuery页面滚动图片等元素动态加载实现
一.关于滚动显屏加载 常常会有这样子的页面,内容很丰富,页面很长,图片较多.比如说光棍节很疯狂的淘宝商城页面. 或者是前段时间写血本买了个高档耳机的京东商城页面,或者是新浪微博之类. 这些页面图片数量 ...
- 1月11日学习内容整理:请求库selenium之选择器,等待元素被加载
首先引入: from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdr ...
- python如何校验页面元素是否加载完毕_爬虫(八十七)等待页面加载完成(Waits)...
现在的大多数的Web应用程序是使用Ajax技术.当一个页面被加载到浏览器时, 该页面内的元素可以在不同的时间点被加载.这使得定位元素变得困难, 如果元素不再页面之中,会抛出 ElementNotVis ...
- key 和secret_Java Secret:加载和卸载静态字段
key 和secret 总览 首先,很自然地假设静态字段具有特殊的生命周期,并且在应用程序的生命周期中一直存在. 您可以假设它们存在于内存中的特殊位置,例如C或类元信息的perm gen中的内存开始. ...
- Java Secret:加载和卸载静态字段
总览 首先,很自然地假设静态字段具有特殊的生命周期,并且在应用程序的生命周期中一直存在. 您可以假设它们存在于内存中的特殊位置,例如C或类元信息的perm gen中的内存开始. 但是,得知静态字段驻留 ...
- 通过应用程序域AppDomain加载和卸载程序集之后,如何再返回原来的主程序域
实现目的:动态加载dll,执行完毕之后可以随时卸载掉,并可以替换这些dll,以在运行中更新dll中的类. 其实就是通过应用程序域AppDomain加载和卸载程序集. 在这方面微软有篇文章http:// ...
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)6-----在不卸载程序域的前提下替换程序集文件。...
原文:C#.Net 如何动态加载与卸载程序集(.dll或者.exe)6-----在不卸载程序域的前提下替换程序集文件. 当某个程序集文件被载入AppDomain,该文件在AppDomain.Unloa ...
- C#中动态加载和卸载DLL
在C++中加载和卸载DLL是一件很容易的事,LoadLibrary和FreeLibrary让你能够轻易的在程序中加载DLL,然后在任何地方卸载.在C#中我们也能使用Assembly.LoadFile实 ...
- U3D assetbundle加载与卸载的深入理解
U3D assetbundle加载与卸载的深入理解 using UnityEngine; using System.Collections; using System;public class tes ...
最新文章
- 【Qt】数据库用户接口层
- C#趣味程序---理财高手
- aps后缀是什么文件_APS审核真的取消了么?
- ECSHOP隐藏帮助中心文章页的评论功能方法
- 开发人员的幸福:您需要知道的
- 使用DBUtils实现增删改查
- 牛客NOIP暑期七天营-普及组1 解题报告
- 后台管理系统推荐(PHP)
- 【C补充】指向指针或函数的指针
- 文件编码格式转换工具
- 用C语言实现英文单词排序
- Vi IMproved
- Java工作小组组名,起组名和口号大全
- 12张图带你轻松了解 calico 6种场景下宿主机和pod互访的iptables规则链流转情况【下】
- prometheus+grafana简介与linux下的安装
- lineNumber: 1; columnNumber: 1; 前言中不允许有内容。(服务器开启时)
- FireAlpaca(电脑绘画软件)官方中文版V2.7.7 | 火羊驼绘画软件下载 | 电脑绘画软件哪个好用?
- 使用Process Monitor对病毒进行行为分析
- 如何去除Excel中的重复的行数据
- unity终极抗锯齿抗白边黑边投影阴影不正常问题解决
热门文章
- 分享一个普通程序员的“沪漂”六年的历程以及感想
- VS2017 -error LNK1104: 无法打开文件“msvcprtd.lib”
- 6-25漏洞利用-irc后门利用
- windows下的host文件在哪里,有什么作用?
- 依赖注入依赖注入容器
- Git远程分支管理(四)
- CGAL求最小外包矩形
- C++关键段、原子锁、互斥量及信号量的实现和区别
- c# 选中dataGridView中的一行将其删除
- 如何修改需要以管理员身份才能操作的文件(极其简单的技巧)