现在的位置: 首页 > 综合 > 正文

Silverlight™ 3 SDK(软件开发工具包)已经移除 ASP.NET MediaPlayer 与 ASP.NET Silverlight 这 2 个 Silverlight 的 ASP.NET 控件 [转]

2013年03月14日 ⁄ 综合 ⁄ 共 2421字 ⁄ 字号 评论关闭

原文:http://www.limingchstudio.com/2009/07/silverlight-3-sdk-aspnet-mediaplayer.html

Silverlight™ 2 SDK(安装 Silverlight™ 2 Tools for Visual Studio 2008 SP1 时,即会随之安装)提供的 2 个 Silverlight ASP.NET 服务器控件:

· ASP.NET MediaPlayer 控件
将音频 (WMA) 和视讯 (WMV) 的媒体来源,整合到 Web 应用程序中。

· ASP.NET Silverlight 控件
搭配 ScriptManager 控件,让您在 Web 网页中,内嵌 XAML 应用程序。

在 Silverlight™ 3 SDK(安装 Silverlight™ 3 Tools for Visual Studio 2008 SP1 时,即会随之安装)已经移除了上述的 Silverlight™ ASP.NET 服务器控件,也就是说,当您在未安装过 Silverlight™ 2 SDK 的 Visual Studio 2008 SP1 集成开发环境中,开启 .aspx 网页,展开「工具箱」之后,将看不到Silverlgiht这个索引卷标(如果您同时安装 Silverlight™ 2 SDK 与 Silverlight™ 3 SDK,则会看到该索引卷标)。如欲将既有的 Silverlight™ 2 方案升级成 Silverlight™ 3,或是在 Silverlight™ 3 使用这 2 个控件,请自行由 MSDN Code Gallery 下载 ASP.NET Server Controls for Silverlight Samples(其内含的 System.Web.Silverlight.dll 目前版本为 3.0.40210.0)。

下载完毕之后,请解开压缩文件,将其根目录中的 System.Web.Silverlight.dll 复制到 Silverlight™ 3 方案中的 ASP.NET 网站项目内的 Bin 目录。接着用鼠标右键单击「方案总管」中的网站项目,然后按下「属性页」指令,再按下「参考」节点,以便将刚刚复制的 System.Web.Silverlight.dll 加入参考。

不要忘记要在 Web.config 文件指定标记前置词与命名空间的对应,或是直接在 ASP.NET 网页中,使用 @ Register 指示词,如下所示即是在网页中,使用 @ Register 指示词的设定:

<%@ Register Assembly="System.Web.Silverlight"

    Namespace="System.Web.UI.SilverlightControls" TagPrefix="asp" %>

如果您的方案是从 Silverlight™ 2 或是 Silverlight™ 3 Beta 升级而来,建议您将原本使用 ASP.NET Silverlight 控件的网页换成 <object> 标记,以便透过 HTML 语法内嵌并设定 Silverlight 插件,最重要的是此种方式可以与 Silverlight 所有支持的浏览器兼容。例如原本的网页程序代码为:

<asp:Silverlight runat="server" Width="100%" Height="100%"

Source="~/ClientBin/LimingStudio.xap"

ScaleMode="Stretch"

MinimumVersion="2.0.0.0"

OnClientPluginLoaded="onLoad" />

改成:

<script type="text/javascript">

function handleResize(obj) {

// 在此撰写处理 Silverlgiht 插件尺寸的程序代码

}

function onLoad(obj) {

// 在此撰写处理加载 Silverlgiht 插件的程序代码

}

</script>

...

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">

 <param name="Source" value="/ClientBin/LimingStudio.xap" />

 <param name="OnResize" value="handleResize" />

 <param name="minRuntimeVersion" value="3.0.40624.0" />

 <param name="OnLoad" value="onLoad" />

</object>

将上述的参数简要说明如下:

· 使用 data 属性可以避免在某些浏览器上发生效能低落的问题。提醒大家,末端双引号前的逗号是属性值的一部分,代表第 2 个资料参数的值是空值

· type 属性是用 Silverlight MIME 类型来识别 Silverlight 插件及其所需的版本。

· 至于 widthheight 是为了跨浏览器兼容性所需的属性,用来指定相对于祖先元素宽度和高度的固定像素值或是百分比。如果使用相对大小,即可以透过上述程序代码中的 handleResize 函式来处理 Content.Resized 事件,以便当插件的大小变更时,可以进行适当的处理。

· param 项目中的 source 是必要的属性设定,它会指出应用程序文件所在的位置与名称。我们通常会使用相对路径来指定 .xap 应用程序套件。

· param 项目中的 minRuntimeVersion 用来指定执行 Silverlight 应用程序所需的 Silverlight 插件之最小版本为何。

最后,请不要忘记将 Silverlight™ 3 所提供的 Silverlight.js 文件(默认的所在目录为:C:\Program Files\Microsoft SDKs\Silverlight\v3.0\Tools)复制到 ASP.NET 网站项目中,并在网页中加以引用。

抱歉!评论已关闭.