我可以说是最早接触Silverlight的.NET开发人员,发现使用Silverlight开发东西还真是一个体力活,幸好有一些比较轻量级的开发工具可以使用。
   开发工具:VS 2008(凑合用用吧) Blend 2.0 June Beta版 画界面一定要用, IE 8.0 Beta1 FireFox's FireBug ,代码管理工具 VS Team 2008
   下面是我在开发CRD的时候使用的代码和遇到的问题,最近为CRD做的Silverlight马上就要发布了,大家有时间捧个场。   

   开始开发,重新设计createilverlight,代码如下:
   className要实现类名;
   xamlName要创建xaml的名称
   silverlightPlugInHostName是Silverlight要挂接的宿主的Id,通常是Div的Silverlight
   silverlightName是生成Object对象的Id

 

 1CRD.createSilverlight = function(className,xamlName,silverlightPlugInHostName,silverlightName)
 2{
 3    var scene = new className();
 4    CRD.InstanceLibrary[xamlName] = scene; 
 5  
 6    Silverlight.createObjectEx({
 7        source: xamlName,
 8        parentElement: document.getElementById(silverlightPlugInHostName),
 9        id: silverlightName,
10        properties: {
11            width: '1000',
12            height: '500',
13            background:'#00ffffff',
14            isWindowless: 'true',
15            version: '1.0',
16            framerate:'30'
17            
18        }
,
19        events: {
20            onError: null,
21            onLoad: Silverlight.createDelegate(scene, scene.handleLoad)
22        }
,        
23        context: null 
24    }
);
25}

问题:
在Html Transitional的DocType情况下,有些元素是不能使用"/>"进行封口的,例如:a,div,好像只有<br/><hr/>可以吧,否则页面会出现问题。

Silverlight在Host便签的Style为display:none时,是没有办法使用全屏模式的。content.FullScreen=true是没有作用的。

Silverlight全屏幕模式被激发的时候,如果没有Silverlight当前没有得到鼠标点击焦点,(模拟点击也不可以),Silverlight的actualWidth和actualHeight
是Host的Width和Height。大家注意了。


未完待续

posted on 2008-07-11 16:40  geewu  阅读(322)  评论(2编辑  收藏  举报