Silverlight 2 概述

此页仅适用于 Silverlight 2 项目

Microsoft Silverlight 2 是一个跨浏览器、跨平台的插件,可通过 Web 提供各种带有视频、动画、交互功能和精美用户界面的应用程序。在大多数浏览器中,Silverlight 2 应用程序在基于 Microsoft Windows 的计算机和 Apple Macintosh 计算机上的外观和行为相同,而且没有任何额外的安装要求。

Silverlight 2 使用 XAML 来提供统一的呈现模型。在安装有 Service Pack 1 的 Microsoft Expression Blend 2 中,可以迅速为 Silverlight 2 应用程序设计精美的用户界面并测试相应的效果。

可在 Silverlight 2 中执行哪些任务?

了解使用 Silverlight 2 所能创建的内容的最佳方式是查看示例应用程序。Expression Blend 2 Service Pack 1 中含带 Silverlight 2 项目示例。您可以单击“帮助”菜单上的“欢迎屏幕”,然后从“示例”选项卡上单击以下示例之一在美工板上将其打开:

  • 内存

  • ImageGallery

此外,您还可以在 Silverlight 展示(此链接可能指向英文页面)和 Silverlight 库(此链接可能指向英文页面)中查找其他联机示例。

Dd185505.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-cn,Expression.10).gif返回页首

Expression Blend 2 中的 Silverlight 2 支持

您可以在安装有 Service Pack 1 的 Expression Blend 2 中创建并处理 Silverlight 2 项目。

Silverlight 2 可以支持众多与 Windows Presentation Foundation (WPF) 通用的功能,这些功能是不受 Silverlight 1 支持的。例如,可以使用更多的版式面板及控件(如“Button”和“TextBox”控件)。

Dd185505.alert_note(zh-cn,Expression.10).gif说明:

Silverlight 2 项目中不支持三维对象、动态资源、外部资源字典、XML 数据源以及元素到元素的数据绑定。虽然不支持触发器,但是名为“States”的功能可以提供类似的功能。

工作区

当 Silverlight 2 项目处于打开状态时,Expression Blend 用户界面仅显示适用于 Silverlight 2 的控件、属性和工具。例如,“工具箱”和“资源库”中不会显示不受支持的控件。

控件

若要设计 Silverlight 2 应用程序的用户界面,请将控件和其他元素添加到 Silverlight 2 项目中的 XAML 文档(通常是 Page.xaml)中。在 Expression Blend 中,“资源库”的“控件”选项卡列出了 Silverlight 2 运行时中提供的控件。

有关如何向项目添加控件的信息,请参阅在 Silverlight 2 项目中绘制控件。有关如何向“资源库”添加更多控件的信息,请参阅通过添加引用来导入自定义控件

资源

静态资源和模板是受支持的。这意味着,您可以为控件创建可重用的颜色、画笔和外观。动态资源则不受支持。有关资源和模板的详细信息,请参阅修改不同状态的系统控件的外观在 Silverlight 2 项目中创建控件的外观

状态

控件的外观可能因其所处的状态而异。例如,将鼠标指针移到按钮上方时,按钮的颜色会略有改变。"“MouseOver”是按钮的状态之一。

您可以自定义不同状态的任何系统控件或任何导入的自定义 Silverlight 2 控件的外观。前者是 Expression Blend 随附的,而后者是从“Control”类继承的。您可以在控件模板的副本中修改这些控件的状态。有关详细信息,请参阅修改不同状态的系统控件的外观

状态过渡所需的时长也可以自定义。有关详细信息,请参阅修改系统控件状态改变的过渡时间

您不能为用户控件(从“UserControl”类继承的控件)创建模板,但可以从头设计用户控件并添加自定义状态来进行自定义。有关详细信息,请参阅在 Silverlight 2 项目中创建新用户控件定义用户控件的可视状态和过渡时间

媒体

Silverlight 2 项目中支持媒体文件。在打开的 XAML 文档中插入媒体文件时,将会创建“MediaElement”对象以显示该媒体文件。“MediaElement”对象包括“AutoPlay”属性。该属性可以设置为“True”,以便该对象一加载到应用程序中便立即开始播放该媒体文件。“MediaElement”还包含与下载进度和缓冲有关的事件。这些事件可在“属性”面板的“事件” Dd185505.6c67bb3b-e8a2-4a63-bad5-54d5c15b04dd(zh-cn,Expression.10).png 视图中进行访问。有关如何挂钩到事件的详细信息,请参阅创建新的事件处理程序方法

数据

公共语言运行时 (CLR) 数据源受到支持,但 XML 数据源及元素到元素的数据绑定不受支持。

代码隐藏文件

XAML 文档的代码隐藏文件是用 C# 或 Visual Basic .NET 编写的。有关在 Silverlight 2 应用程序中使用代码隐藏文件的示例,请参阅将新页面以动态方式加载到 Silverlight 2 应用程序中

Dd185505.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-cn,Expression.10).gif返回页首

跨产品支持

您可以按照下列方式来利用其他产品处理 Silverlight 2 项目:

  • 从安装有 Service Pack 1 的 Microsoft Expression Encoder 2 中导入 Silverlight 2 项目和编码模板。有关详细信息,请参阅自定义用于 Silverlight 2 的 Expression Encoder 模板

  • 使用 Microsoft Expression Web 2 或 Microsoft Visual Studio 2008 的部署功能发布 Silverlight 2 应用程序。还可将已编译的应用程序文件复制到 Web 文件夹中。有关详细信息,请参阅将 Silverlight 2 应用程序添加到网站

  • 通过在 Visual Studio 2008 中打开 Silverlight 2 项目对其进行调试。

Dd185505.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-cn,Expression.10).gif返回页首

Silverlight 2 项目中的文件

创建基于 Silverlight 2 应用程序的项目,并在 Visual Studio 2008 的“添加 Silverlight 应用程序”对话框中选择“动态生成 HTML 测试页以承载此项目中的 Silverlight”选项时,Expression Blend 会创建一组与 Microsoft Visual Studio 2008 相同的文件。

以下文件是在您创建 Silverlight 2 项目时生成的。

文件

描述

ProjectName.sln

Visual Studio 解决方案文件,用于指定解决方案的配置设置,并引用该解决方案中的所有项目。

ProjectName.csproj

ProjectName.vbproj

项目文件,用于指定项目的配置设置(包括启动网页),并引用该项目中的所有源文件。

App.xaml

定义应用程序级资源的文件。例如,如果自定义按钮模板并选择在应用程序级别进行定义,则项目中的所有文档均可使用该模板来设置按钮的样式。

App.xaml.cs

App.xaml.vb

App.xaml 文件的代码隐藏文件。

Page.xaml

默认的 XAML 文件,从中可以开始设计 Silverlight 2 应用程序的用户界面。

Page.xaml.cs

Page.xaml.vb

相应内容文件的代码隐藏文件。用户交互和应用程序行为通常是在代码隐藏文件中编程的。

AppManifest.xml

定义 Silverlight 2 应用程序中包含的程序集。例如,使用安装有 Service Pack 1 的 Expression Blend 2 创建的 Silverlight 2 项目将在程序集文件 (ProjectName.dll) 中构建 Silverlight 2 应用程序。因此,AppManifest.xml 至少总会列出由其所在的项目创建的程序集。

AssemblyInfo.cs

AssemblyInfo.vb

定义应用程序的属性,如版本号、描述和已加载的程序集等。

Dd185505.alert_tip(zh-cn,Expression.10).gif提示:

最常用的文件是 Page.xaml。您可以在该文件中设计 Silverlight 2 应用程序的用户界面。其他可以修改的文件有 App.xaml 文件以及其他任何可添加到项目中的内容文件 (.xaml)。

生成并测试 Silverlight 2 项目时,将在 \bin\debug 文件夹中创建以下文件,而且 Expression Blend 将尝试打开启动网页。

文件

描述

AppManifest.xaml

AppManifest.xml 文件的 Silverlight 2 版本。

Default.html 或 TestPage.html(如果项目是用 Visual Studio 2008 创建的)

将 Silverlight 2 应用程序(包含在 ProjectName.xap 中)加载到浏览器中的网页。

ProjectName.dll

应用程序的已编译程序集,该应用程序是在项目的内容文件中设计的。

ProjectName.pdb

应用程序的调试信息。

ProjectName.xap

已压缩的存档内容,其中包括 Silverlight 2 应用程序的所有内容和资源。用户将该文件下载到各自的浏览器中,然后使用 Silverlight 2 插件来运行。

引用

程序集引用列在 Expression Blend 的“项目”面板中的“文件”之下。

Dd185505.65aaebe1-ca4c-4805-a869-02d767be3c00(zh-cn,Expression.10).png

创建新项目时,系统将会为您添加对 Silverlight 2 程序集的默认引用。“Button”和“TextBox”等控件是在这些引用的程序集中定义的。您可以根据需要添加其他的 Silverlight 2 程序集引用。此外,您还可以添加对 .dll 文件的引用,这些文件是通过其他 Silverlight 2 项目编译的。有关详细信息,请参阅通过添加引用来导入自定义控件

Dd185505.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-cn,Expression.10).gif返回页首

学习资源

在下面的网站中,可以了解有关如何创建 Silverlight 应用程序的更多信息:

Dd185505.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-cn,Expression.10).gif返回页首