代码改变世界

WPF InitializeComponent() 方法介绍

2013-09-07 17:15  Andrew.Wangxu  阅读(3341)  评论(0编辑  收藏  举报
namespace WindowsApplication1
{
    /// <summary>
    /// Interaction logic for Window1.xaml
   /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }
    }
}

  

    当编译应用程序时,定义用户界面的 XAML(如 Window1.xaml)被转换为 CLR 类型声明,这些类型声明和代码隐藏类文件(如 Window1.xaml.cs)中逻辑代码融合到一起,形成单一的单元。

    现在,Window1 类尚不具备有任何真正的功能。然而,它却包含了一个非常重要的细节 ——默认构造函数,当创建类的一个实例时,该构造函数调用 InitializeComponent() 方法。该方法在 WPF 应用程序中扮演着一个重要角色。因此,永远不要删除在窗口构造函数中的 InitializeComponent() 调用。同样,如果为窗口类添加另一个构造函数,也要确保调用 InitializeComponent() 方法。

 

   InitializeComponent()  方法在源代码中是不可见的,因为它是在编译应用程序时自动生成的。本质上,InitializeComponent() 方法的所有工作就是调用 System.Windows.Application 类的LoadComponent() 方法。LoadComponent() 方法是从程序集中提取 BAML,并使用它构造用户界面。当解析BAML时,它会创建每个控件对象,设置其属性,并关联所有事件处理程序。

参考:http://www.wxzzz.com/?id=124