原文地址:http://www.cnblogs.com/Jennifer/articles/1997763.html
WPF中所有窗口的基类型都是System.Windows.Window。Window通常用于SDI窗口和对话框。Window在应用程序中除了一个设计用于托管*内容的控件外,就别无他物了。典型的,可以混合使用标记和代码来定义一个窗口。代码如下:
在xaml页:
<Window x:Class="WPFApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="This is a Window" Height="350" Width="525">
</Window>
在cs页面中:
namespace WPFApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
}
运行这段代码将产生一个很无趣的窗口:
注意:就算这样一个无趣的窗口的生命周期也有好几个阶段:
1、构造器被调用
2、Window.Initialized事件被触发
3、Window.Activated事件被触发
4、Window.Loaded事件被触发
5、Window.ContentRendered事件被触发
6、用户和窗口进行交互
7、Window.Closing事件被触发
8、Window.Uloaded事件被触发
9、Window.Closed事件被触发
户在运行系统上的多个窗口中切换时,Activated和Deactivated在窗口的生命周期里会发生多次。ContentRendered事件只对窗口第一次完全呈现出来进行触发。为了让一些事情能在所有内容都显示给用户之前马上执行,可以用Loaded事件;为了让一些事情能在所有内容都显示给用户之后马上执行,可以用ContentRendered事件。