使用Javascript动态载入Silverlight应用程序
来源:互联网 发布:win10字体渲染软件 编辑:程序博客网 时间:2024/06/10 23:58
读过Silverlight Unleashed,知道在Silverlight.js里有Silverlight.createObject和Silverlight.createObjectEx函数。使用这两个函数而不是静态<object>标签时,就可以动态载入不同的xap包(不同的Silverlight应用程序)。
创建两个Silverlight应用程序和一个Web应用程序,解决方案看起来是介个样子:
两个Silverlight应用程序再普通不过,Web应用程序ClientBin目录下的两个xap包,就是编译过后的这两个Silverlight应用程序。Web应用程序中的Silverlight.js,是由VS生成的,Silverlight.createObject和Silverlight.createObjectEx函数就在里面。首先,新建SilverlightLibrary.js文件,添加常用的onSilverlightError函数。
在默认的aspx或html测试页面中,该函数会在<object>的<param>中被设置。现在,会在Javascript中被设置。
接下来,在SilverlightLibrary.js文件文件中添加createSilverlight函数。该函数是对Silverlight.createObjectEx的一种封装,里面大部分参数设置都和<object>的<param>对应。source由参数传入,parentElement设置为页面上的一个<div>(placeholder,占座),properties中的background设置为<body>上由css控制的背景色,onError设置为之前的onSilverlightError函数。
新建CreateSilverlightByJs.htm文件,在<body>区添加两个单选按钮,一个按钮和一个占座用的<div>(placeholder)。其中,单选按钮的value属性设置为xap包的名称,按钮的onclick属性设置为稍后将添加的create函数。
在<head>区,引用Silverlight.js和SilverlightLibrary.js。添加一个create函数,该函数判断用户选中哪个单选按钮,根据单选按钮中的value说设置的xap包名称组合成完整路径,最后调用SilverlightLibrary.js中的createSilverlight函数。
运行起来的样子:
That's all. Enjoy!
- 使用Javascript动态载入Silverlight应用程序
- javascript 动态载入js文件
- 动态载入 JavaScript/Csss 文件
- Javascript:动态载入Javascript 和CSS 文件
- 在页面中动态载入外部javascript
- 在页面中动态载入外部javascript
- 如何使用Silverlight Streaming发布Silverlight应用程序
- 在Silverlight 2.0应用程序中调用JavaScript
- 使用AsyncTaskLoader动态载入SQLite数据
- 动态载入并使用界面XML-----LayoutInflater
- 在页面中动态载入外部javascript和CSS
- AMD规范:简单而优雅的动态载入JavaScript代码
- 动态载入/删除/更新外部 JavaScript/Css 文件
- AMD规范:简单而优雅的动态载入JavaScript代码
- AMD规范:简单而优雅的动态载入JavaScript代码
- 使用Silverlight Stream 轻松托管部署你silverlight应用程序
- 使用Expression Encoder 上传Silverlight应用程序
- MATLAB中使用load动态载入mat文件
- 在进行android-sdk-windows中进行 update all时, 报错 folder failed to be renamed or moved
- MYSQL的事务处理功能
- storage size of 'value' isn't known问题出现的可能原因
- Zh_CN.GB18030 判断是否为中文
- Windows操作系统堆和栈的区别
- 使用Javascript动态载入Silverlight应用程序
- hibernate id生成器
- 彷徨期
- android源码下载
- VC中头文件互相包含错误
- 重新注册iis
- VC中用内存映射文件处理大文件
- java接口传递数据的实例
- 微软live space 关门