在 Silverlight 中管理动态内容交付,第 1 部分
2009-02-05 11:54:37 来源:WEB开发网如果想返回 XAP 内容,可将响应的内容类型设置为 application/octet-stream,这是一种 MIME 类型,通常用于标识通用的二进制内容。
要将该插件与 HTTP 处理程序或您选择的任何其他端点相关联,可使用常见的 Silverlight 编程技术。例如,您可以在 ASP.NET 页面中使用 Silverlight 服务器控件:
<asp:Silverlight ID="Xaml1" runat="server"
Source="~/xap.ashx"
MinimumVersion="2.0.30523"
Width="100%"
Height="100%" />
在这两个示例中,Silverlight 应用程序的工厂均位于 Web 服务器上。如果宿主页面需要动态指示要下载的内容,则这不失为一种不错的方法。
但是,这只是一种可能的情况。还有另一种情况可能更常见,即需要下载当前 Silverlight 应用程序的可选组件。在这种情况下,选择和下载外部内容的逻辑全部位于客户端上运行的 Silverlight 插件中。
请求内容
Silverlight 2 为按需下载代码和/或 XAML 提供了一个丰富而又强大的 API,可用来下载内容并将其插入到现有的 XAML 文档对象模型中。
XAML 树的所有可视元素都有一个名为 Children 的属性,可用来以编程方式添加或删除任意大小的子元素。例如,您可以附加从同一服务器甚至是从信任的可选远程服务器下载的整个用户控件。示例如下行所示:
StackPanel1.Children.Add(downloadedContent);
由参数表示的用户控件被添加到 StackPanel XAML 元素的 Children 集合中。呈现是即时性的,而用户界面是实时更新的。
您可以做的不仅仅是下载内容并将其附加到现有文档对象模型中。您可以执行更多其他操作,例如,您可以在本地将其缓存到应用程序的本地存储中并检查自己的缓存是否存在请求内容,在确认完毕后再向服务器发出新请求。
Tags:Silverlight 管理 动态
编辑录入:爽爽 [复制链接] [打 印]- ››动态的改变IFrame的高度
- ››动态4种方法加载JS脚本
- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››管理/var/spool/clientmqueue/下的大文件
- ››Silverlight for Windows Phone 7开发系列(1):...
- ››Silverlight for Windows Phone 7开发系列(2):...
- ››Silverlight for Windows Phone 7开发系列(3):...
- ››Silverlight for Windows Phone 7开发系列(4):...
- ››动态调用对象事件
- ››动态创建控件支持事件响应并可保存与读取
- ››Silverlight for Symbian
更多精彩
赞助商链接