WPF 基础知识
Windows Presentation Foundation (WPF) 是下一代显示系统,用于生成能带给用户震撼视觉体验的
Windows 客户端应用程序。使用 WPF,您可以创建广泛的独立应用程序以及浏览器承载的应用程
序。
WPF 的核心是一个与分辨率无关并且基于向量的呈现引擎,旨在利用现代图形硬件的优势。WPF
通过一整套应用程序开发功能扩展了这个核心,这些功能包括 可扩展应用程序标记语言 (XAML)、
控件、数据绑定、布局、二维和三维图形、动画、样式、模板、文档、媒体、文本和版式。WPF
包含在 Microsoft .NET Framework 中,使您能够生成融入了 .NET Framework 类库的其他元素的应用
程序。
为了支持某些更强大的 WPF 功能并简化编程体验,WPF 包括了更多编程构造,这些编程构造增强
了属性和事件:依赖项属性和路由事件。有关依赖项属性的更多信息,请参见依赖项属性概述。
有关路由事件的更多信息,请参见路由事件概述。
这种外观和行为的分离具有以下优点:
1 降低了开发和维护成本,因为外观特定的标记并没有与行为特定的代码紧密耦合。
2 开发效率更高,因为设计人员可以在开发人员实现应用程序行为的同时实现应用程序的外观。
3 可以使用多种设计工具实现和共享 XAML 标记,以满足应用程序开发参与者的要求:Microsoft
Expression Blend 提供了适合设计人员的体验,而 Visual Studio 2005 针对开发人员。
4 WPF 应用程序的全球化和本地化大大简化(请参见 WPF 全球化和本地化概述)。
在运行时,WPF 将标记中定义的元素和属性转换为 WPF 类的实例。例如,Window 元素被转换为 Window 类的实
例,该类的 Title 属性 (Property) 是 Title 属性 (Attribute) 的值。
注意在
constructor
中
Call: InitializeComponent();
x:Class
属性用于将标记与代码隐藏类相关联。
InitializeComponent
是从代码隐藏类的构造函数中调用的,用于将标记中定义的
UI
与代码隐藏类相合并。
(
(生成应用程序时将为您生成
InitializeComponent
,因此您不需要手动实现它。)
x:Class
和
InitializeComponent
的组合确保您的实现无论何时创建都能得到正确的初始化。
.NET Framework
、
System.Windows
、标记和代码隐藏构成了
WPF
应用程序开发体验的基础
窗口:
WPF
对话框:
MessageBox
、
OpenFileDialog
、
SaveFileDialog
和
PrintDialog
。
WPF
提供了以下两个选项作为替代导航宿主:
Frame
,用于承载页面或窗口中可导航内容的孤岛。
NavigationWindow
,用于承载整个窗口中的可导航内容。
启动:
StartupUri="MainWindow.xaml" />
此标记是独立应用程序的应用程序定义,并指示
WPF
创建一个在应用程
序启动时自动打开
MainWindow
的
Application
对象。
WPF
控件一览