技术开发 频道

使用 ASP.NET 控件封装 Silverlight


  2007 年 5 月发布的 ASP.NET Futures 版本中引入了两个新 ASP.NET AJAX 控件:asp:Xaml 和 asp:Media。(请注意,asp:Media 继承自 asp:XAML。)这两个控件都提供自己的 Silverlight 封装,而且这两个控件生成的方式与前文提供的示例大致相同。实际上,我生成控件的灵感就来自这两个控件。

  asp:Xaml 控件可以将 XAML 文件与控件关联。它包含 Silverlight 插件创建的各种属性,这些属性处理创建插件和加载 XAML 文件的所有细节。例如,可以通过下列声明,使用 XAML 文件显示 Sphere.xaml 文件:
<asp:Xaml runat="server" ID="_sphereXaml" Windowless="true" Width="300px" Height="300px" XamlUrl="~/Sphere.xaml" />
  使用 asp:Media 控件可以轻松将媒体内容(视频或音频)嵌入 ASP.NET 页面,并在创建封装 Silverlight 的 ASP.NET 控件时对这些功能实实在在地加以展示。Media 控件其中一个吸引人的功能是它能提供八种不同的外观(XAML 文件),您可以选择这些外观来呈现媒体,或者可以设计自己的外观。图 8 显示了一个使用 Expression 外观播放视频的 Media 控件示例。

<asp:Media runat="server" ID="_butterflyVideo" MediaSkin="Expression" MediaUrl="~/Butterfly.wmv"
  另一种创建自己处理过的 Silverlight 服务器端控件的方法是直接从 asp:Xaml 控件派生,然后用属性和方法添加控件,方法大致与上文第二种控件实现方法类似。在本期专栏的代码下载中,我包含了另一个继承自 asp:Xaml 的 SilverlightSphere 控件版本。
0
相关文章