大多数开发人员对于即将到来的windows vista(以前称为longhorn)中的两个特性很感兴趣,其中一个就是avalon。avalon是winfx中显示子系统类库的代号,它是vista/longhorn中新的应用程序编程接口(api)。avalon由一个显示引擎和一个受控代码框架组件组成。 你可以使用avalon建立逼真的longhorn应用程序,把应用程序ui、文档和媒体内容混合在一起。
尽管vista大约还需要过一年时间才会发布(预计发布时间是2006年末),但是微软最近还是在beta1 rc中为公众提供了avalon和indigo(开发者感兴趣的另一个特性)的一个版本。任何希望在windows xp上测试avalon和indigo特性的人员都可以下载这个rc beta版,并学习avalon和indigo提供的重大特性。
起步
如果你希望在windows xp上试验avalon,需要安装下面一些内容:
·微软预发布的软件“avalon”和“indigo”beta1 rc:
http://www.microsoft.com/downloads/details.aspx?familyid=b789bc8d-4f25-4823-b6aa-c5edf432d0c1&displaylang=en
·winfx sdk(软件开发工具包):
http://download.microsoft.com/download/5/4/0/5407d6e4-740e-413e-8e91-ef7ac53a478a/en_winfx_sdk_beta1_rc.iso
·微软visual studio 2005
编译和运行avalon应用程序的最简单的途径是使用visual studio 2005,它现在处于beta 2测试中(你可以使用winfx sdk中包含的msbuild工具来手动编译avalon应用程序,但是这个过程非常乏味,我们并不推荐)。
xaml——vista标记语言
在avalon中,你使用xaml标记语言来建立应用程序的ui。使用xaml建立ui的过程与建立html页面的过程相似。你使用标记来呈现(render)那些希望显示在页面上的控件。xaml与html不同,它是基于xml的,因此你必须确保xaml页面严格地遵循xml的规则,例如元素(element)和属性(attribute)的名称是大小写敏感的,必须恰当地为属性提供值,等等。
xaml中的每个元素都被映射为一个类,属性(attribute)则被映射为属性(property)。编译xaml应用程序的时候,ui被转换为对象模型(object-model)代码并使用局部(partial)类与后台代码组合在一起。因此,除了使用xaml生成ui之外,你还可以使用代码编程来建立ui。在本文后面我将为你解释后台代码的使用方法。
目前的winfx sdk不支持任何用于建立xaml ui的可视化编辑器,但是毫无疑问,微软不久就会发布一个。到时候你就可以手动编写xaml页面了。与winfx sdk一起提供的xamlpad编辑器允许你快速地建立和测试那些用xaml建立的用户界面。
载入xamlpad的步骤是“开始->程序->微软winfx sdk ->工具-> xamlpad”。
xamlpad编辑器窗口被分成两个面板:你在下面的面板中输入xaml代码,上面的面板将根据你输入的xaml代码实时地显示ui。xamlpad易于使用,不需要你编译。现在我将介绍少量的简单练习内容,用于演示avalon可以建立的不同类型的应用程序。
我们开始建立示例应用程序,在xamlpad中输入下面的代码:
| <stackpanel background="lightblue" xmlns="http://schemas.microsoft.com/winfx/avalon/2005"> <button name="button1" width="100" horizontalalignment="left" margin="10,10,10,5"> this is a button </button> <textblock horizontalalignment="left" margin="10,5,10,5"> this is a text block </textblock> <textbox name="button1" width="200" horizontalalignment="left" margin="10,5,10,5"> this is a textbox </textbox> </stackpanel> |
图1:呈现ui的 xamlpad。xamlpad上面的面板实时地呈现下面的面板中输入的代码。
关键字 本文所属关键字相关 与本文相关文章
分类 所有文章关键字导航源码编程相关Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏 操作系统/服务器相关Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器 标准 网站致力的规范 |