RIA(Rich Internet Application) Microsoft 的 Avalon 和 XAML

类别:.NET开发 点击:0 评论:0 推荐:

1.      什么是 Avalon

Avalon 是下一版本的Windows(代号“Longhorn”)的一部分,是一个图形和展示引擎,主要由新加到.NET 框架中的一组类集合而成。

2.      什么是XAML

Avalon 定义了一个在Longhorn中使用的新标记语言,其代号为“XAML”(可扩展应用程序标记语言)。可以使用XAML来定义文本、图像和控件的布局,这与使用HTML非常相似。大多数写入Avalon的应用程序均可能同时包含程序代码和XAML。您将使用XAML定义应用程序初始的可视界面,并编写用于实现其他功能的代码。您可以将程序代码直接嵌入到XAML中,也可以将它保留在一个单独的文件内。能够用XAML实现的所有功能均可以通过程序代码实现。因此,根本无需使用任何XAML也有可能编写程序。但是,反之则不行;许多任务只能通过程序代码完成,因此,只有最简单的应用程序才会只包括XAML。

利用 XAML 元素,您可以控制每个页的布局,包括文本和图像的显示、插入按钮、文本框等交互式组件。总之,XAML 是用于以声明方式呈现构成应用程序的页的用户界面的语言。当然,除了使用 XAML,您也可以完全使用过程代码来编写 Longhorn 的应用程序。一般来说,一个基于 Longhorn 的成功的应用程序会同时具备 XAML 页和托管过程代码。您可以按自己的方式来组合它们,但这两者的任何组合都是可以接受的。

 

3.      Avalon和XAML如何工作?

我们首先来看一个XAML的代码,也就是最经典的“Hello World”程序。将如下的代码存储成HelloWorld.xaml就可以。

<TextPanel xmlns="http://schemas.microsoft.com/2003/xaml"

        Background="BlanchedAlmond"

        FontFamily="Comic sans MS"

        FontSize="36pt"

        HorizontalAlignment="Center">

    Hello, world!

</TextPanel>

由于其中没有代码,因此您可以将 HelloWorld.xaml 文件直接加载到 Microsoft Internet Explorer 的 Longhorn 版本中,然后您将看到类似于一个 Web 页的内容。还可以使用一个目前称作 MSBuild 的程序来编译 HelloWorld.xaml。进行这种编译时,还需要两个其他的短文件(此处未显示)。其中一个扩展名为 PROJ 或 MSPROJ 的文件会提供有关该程序的一些信息并列出所有必需的源文件(XAML 以及其他文件)。还需要另外一个 XAML 短文件来指出执行该程序时首先显示哪个 XAML 页。运行 Hello World 的可执行文件,您将看到一个类似于 Windows 程序的内容。图 1 同时显示了这两个版本。


图 1 Hello World 作为页面和作为程序

 

从某种意义上面来说,XAML和HTML页面非常相似,不过因为是基于XML的,所以拥有了比较严格的规范,同时因为在Avalon下执行,Longhorn整个操作系统成为其容器,相对于IE而言,拥有更加广阔的空间。

 

Avalon 和 XAML 象征着与过去基于 Windows 的应用程序编程的脱离。在许多方面,设计应用程序的 UI 都将比过去容易得多,而且部署起来也更轻而易举。很明显,由于有了用于 UI 定义的轻量 XAML 标记,基于 Longhorn 的应用程序会成为集中 Web 和桌面编程模型的下一步发展方向,并且会合并上述两种方法的最佳功能。

本文地址:http://com.8s8s.com/it/it42312.htm