WPF学习之路(七)应用程序和窗口(续)
窗口的生命周期
WPF中一个Window类代表一个窗口
一个的窗口的生命周期也有好几个阶段:
1、构造器被调用
2、Window.Initialized事件被触发
3、Window.Activated事件被触发
4、Window.Loaded事件被触发
5、Window.ContentRendered事件被触发
6、用户和窗口进行交互(Actived与Deactived状态互相切换)
7、Window.Closing事件被触发
8、Window.Uloaded事件被触发
9、Window.Closed事件被触发
用户在多个窗口中切换时,Activated和Deactivated在窗口的生命周期里会发生多次。ContentRendered事件只对窗口第一次完全呈现出来进行触发。
为了让一些事情能在所有内容都显示给用户之前马上执行,可以用Loaded事件;
为了让一些事情能在所有内容都显示给用户之后马上执行,可以用ContentRendered事件。
窗口属性
主要分为两大类:位置尺寸、外观样式
MSDN中有详细的介绍
https://msdn.microsoft.com/en-us/library/system.windows.window_properties(v=vs.110).aspx
To be continue...
WPF学习之路(七)应用程序和窗口(续)的更多相关文章
- WPF学习之路(十一)布局(续)
布局实际上是一个Slot模型,其中每个父对象分配给子对象一个Slot,子对象可以自由占用Slot中的空间,通过Margin\VerticalAlignment\HorizontalAlignment控 ...
- WPF学习之路初识
WPF学习之路初识 WPF 介绍 .NET Framework 4 .NET Framework 3.5 .NET Framework 3.0 Windows Presentation Found ...
- WPF学习之路(七)应用程序和窗口
手动创建应用程序 1.创建Empty Project 2.添加引用 3.添加 ManualApp.cs 并添加下面的代码 [STAThread] public static void Main() { ...
- WPF学习之路(一) 初识WPF
参考<葵花宝典-WPF自学手册> VS2012 先创建第一个WPF小程序 1.创建WPF程序 2.查看Solution,WPF中xaml文件和cs文件经常成对出现 两个主要的类:APP(W ...
- WPF学习之路(十二)控件(Items控件)
ListBox 提供了一个选项列表,可以固定或者动态绑定 <StackPanel> <GroupBox Margin="> <GroupBox.Header& ...
- WPF学习之路(九)导航和页面(续)
生命周期 如果Page1成功导航到Page2,首先会触发NavigationService的Navigating事件,标识导航开始.随后创建Page2对象,并且触发NavigationProgress ...
- WPF学习之路(八)页面
传统的应用程序中有两类应用程序模式:桌面应用,Web应用.WPF的导航应用程序模糊了这两类应用程序的界限的第三类应用程序 WPF导航表现为两种形式,一是将导航内容寄宿于窗口,二是XAML浏览器应用程序 ...
- WPF学习之路(六)Command
在WPF中,命令绑定机制是相比于事件更高级的概念,把应用程序的功能划分为多个任务,任务由多种途径触发. 应用Command Binding使代码更符合MVVM模式(Model-View-ViewMod ...
- WPF学习之路(二) XAML
在WPF中引入了XAML语言,主要用于界面设计,业务逻辑则使用C#实现后台代码,将界面设计与业务逻辑分离 XAML是一种声明式语言,类似XML\HTML 示例: <!--Start Tag--& ...
随机推荐
- C# ~ 从 IEnumerable / IEnumerator 到 IEnumerable<T> / IEnumerator<T> 到 yield
IEnumerable / IEnumerator 首先,IEnumerable / IEnumerator 接口定义如下: public interface IEnumerable /// 可枚举接 ...
- 第一讲:WCF介绍
代码 https://yunpan.cn/cPns5DkGnRGNs 密码:3913 ...
- hibernate----1-1-----两表关联属性放在另一个表里面
package com.ij34.dao; import javax.persistence.*; @Entity @Table(name="Address_inf") publi ...
- 用Apache 里面的ab做一个简单的压力测试
我用的是xampp环境包. D:\xampp\apache\bin 进入这路径, 找到ab.exe 尝试双击打开ab.exe 但不能如愿, 这两个都是一个压力的测试软件, 是apache自带的; 好 ...
- [moka同学笔记]Yii2 自定义class、自定义全局函数(摘录)
1.在app\components下新建MyComponent.PHP namespace app\components; use Yii; use yii\base\Component; use y ...
- Guava学习笔记:简化异常处理的Throwables类
有时候, 当我们我们捕获异常, 并且像把这个异常传递到下一个try/catch块中.Guava提供了一个异常处理工具类, 可以简单地捕获和重新抛出多个异常.例如: import java.io.IOE ...
- linux基础知识总结
使用linux将近一年了,一直都没有时间来总结一下,借着最近在整理知识框架的机会总结一下linux的应用知识. 1.linux有两个目录很特殊,一个是~,另一个是/.两个目录的含义不一样,/是系统 ...
- win server 2008 r2 sharepoint 域环境安装经历
环境: 物理机:win7(x64,计算机名字:wyman-pc,ip:192.168.10.102) / sql server 2008 r2(x64) /VM10 虚拟机:win svr 2008 ...
- LazyCode 自己开源的一个类库
LazyCode 是什么? LazyCode 一个懒人用的代码类库,包括的模块:网络请求,数据存储,UIKit ,Foundation的一些类目 PHNetWorkClient 功能 1:发送GET ...
- HTML5 模拟现实物理效果,感受 Web 技术魅力
Ball Pool 是一个基于 HTML5 技术的实验,模拟现实物理效果,让你在 Web 中感受自然物体的运动.玩法介绍:可以随意拖动圆球.点击页面背景.晃动浏览器.双击页面背景或者按住鼠标左键,有不 ...