WPF笔记(二)

14年前

.NET FrameworkSystem.Windows、标记和代码隐藏构成了 WPF 应用程序开发体验的基础。此外,WPF 还为创造具有丰富内容的用户体验提供了全面的功能。为了打包此内容并将其作为应用程序发送给用户,WPF 提供了一些类型和服务,它们统称为应用程序模型。该应用程序模型既支持开发独立应用程序,也支持开发浏览器承载的应用程序。

独立应用程序

对于独立应用程序,您可以使用 Window 类创建可从菜单栏和工具栏上访问的窗口和对话框。下图演示了带有一个主窗口和一个对话框的独立应用程序。

 

 

对于浏览器承载的应用程序(称为 XAML 浏览器应用程序 (XBAP)),您可以创建能够使用超链接(Hyperlink 类)导航的页面 (Page) 和页函数 (PageFunction<(Of <(T>)>))。下图演示了 Internet Explorer 7 承载的 XBAP 中的页面。

 

应用程序类

XBAP 和独立应用程序通常非常复杂,需要额外的应用程序范围的服务,包括启动和生存期管理、共享属性以及共享资源。Application 类封装了这些服务以及更多内容,并且只需使用 XAML 即可实现,如下面的示例所示。

<Application

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

StartupUri="MainWindow.xaml" />

 

此标记是独立应用程序的应用程序定义,并指示 WPF 创建一个在应用程序启动时自动打开 MainWindow Application 对象。

理解 Application 的一个关键概念在于,它为独立应用程序和浏览器承载的应用程序提供了一个通用的支持平台。例如,浏览器承载的应用程序可以使用前面的 XAML,以便在 XBAP 启动时自动导航到某个页面,如下面的示例所示。

 

<Application

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    StartupUri="HomePage.xaml" />