How To:MOSS+SilverLight
这个东西看起来复杂,但是做起来确实满简单的!重点是在设计好你的SilverLight程序,这里呢?我使用的是SilverLight1.0自带的一个视频的Demo,所以不用考虑如何去实现一个SilverLight程序的问题了!
要将SilverLight集成到MOSS中,首先需要明白一下SilverLight的呈现原理,简单的说SilverLight是通过xaml语言绘制图像界面,然后结合javascript实现操作的程序,在呈现SilverLight的时候也需要Javascript来绘制,如:
function createSilverlight()
{
var scene = new VideoLibrary();
Sys.Silverlight.createObjectEx({
source: "xaml/Scene.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "100%",
height: "100%",
version: "0.9",
background: "black"
},
events: {
onLoad: Sys.Silverlight.createDelegate(scene, scene.handleLoad)
}
});
}
if (!window.Sys)
window.Sys = {};
if (!window.Silverlight)
window.Silverlight = {};
Sys.Silverlight.createDelegate = function(instance, method) {
return function() {
return method.apply(instance, arguments);
}
}
明白这个道理之后,那么我们要想在MOSS中使用SilverLight,则只需要在MOSS中调用createSilverlight()这个Javascript方法就好了。
以VideoLibrary为例,具体做法如下:
将js文件夹,xaml文件夹,assets文件夹,以及Default.html.js上传到MOSS站点的一个文件夹内,然后,在MOSS中创建一个页面,Sliverlight.aspx,然后在SPD中编辑此页面,
在需要插入Silverlight的位置 插入代码:
<div id="SilverlightControlHost" style="height:480px">
<script type="text/javascript">
createSilverlight();
</script>
</div>
保存后刷新页面,你就可以看到绚丽的MOSS+SilverLight页面了!
PS:由于SDK有22MB,Samples也有7MB的样子,这里只为大家提供VideoLibrary的下载了.,完成SDK可以到http://silverlight.net/Default.aspx去下载.