======================================================
注:本文源代码点此下载
======================================================
概述
silverlight 2 beta 1版本发布了,无论从runtime还是tools都给我们带来了很多的惊喜,如支持框架语言visual basic, visual c#, ironruby, ironpython,对json、web service、wcf以及sockets的支持等一系列新的特性。《一步一步学silverlight 2系列》文章将从silverlight 2基础知识、数据与通信、自定义控件、动画、图形图像等几个方面带您快速进入silverlight 2开发。
本文将介绍silverlight与html混合编程之无窗口模式。
无窗口模式
为什么默认情况下silverlight插件会拥有自己的窗口,所有的silverlight的处理操作都会在该子窗口中完成。我们看一个例子:
先做一个简单的silverlight界面:
stackpanel>
stackpanel.background>
lineargradientbrush startpoint="1,0" endpoint="0,0">
gradientstop color="transparent" offset="0" />
gradientstop color="#ff6600" offset="1" />
lineargradientbrush>
stackpanel.background>
textblock text="这里是silverlight" margin="150 100 0 0" foreground="white"/>
stackpanel>
在测试页中定义两个样式,分别用来控制silverlight插件和html内容的样式:
style type="text/css">
.slplugin
{
position: absolute;
top: 0px;
left: 0px;
width: 50%;
height: 200px;
border:dotted 2px #ff6600;
}
.content
{
position: absolute;
top: 0px;
left: 0px;
border:dotted 2px #11fe02;
}
style>
为silverlight插件设置样式,并将插件的背景设置为transparent
asp:silverlight id="xaml1" runat="server"
source="~/clientbin/terrylee.silverlightwindowless.xap"
version="2.0" cssclass="slplugin" pluginbackground="transparent"/>
放置一个div,里面加一些文本:
div class="content">
silverlight 2 beta 1版本发布了,无论从runtime还是tools都给我们带来了很多的惊喜,
如支持框架语言visual basic, visual c#, ironruby, ironpython,
对json、web service、wcf以及sockets的支持等一系列新的特性。
《一步一步学silverlight 2系列》文章将从silverlight 2基础知识、数据与通信、自定义控件、动画、
图形图像等几个方面带您快速进入silverlight 2开发。
div>
现在来运行程序:
可以看到,我们在div中放置的文本,有一部分被silverlight区域挡住了,因为这时候silverlight仍然以默认模式运行,它在浏览器中作为独立的一个子窗口而存在,可以通过属性windowless来设置:
设置windowless为true之后,再运行程序:
现在可以看到,文字信息可以显示在silverlight插件之上。我们再调整一下文字区域和silverlight插件的位置:
div>
div class="content">
silverlight 2 beta 1版本发布了,无论从runtime还是tools都给我们带来了很多的惊喜,
如支持框架语言visual basic, visual c#, ironruby, ironpython,
对json、web service、wcf以及sockets的支持等一系列新的特性。
《一步一步学silverlight 2系列》文章将从silverlight 2基础知识、数据与通信、自定义控件、动画、
图形图像等几个方面带您快速进入silverlight 2开发。
div>
asp:silverlight id="xaml1" runat="server"
source="~/clientbin/terrylee.silverlightwindowless.xap"
version="2.0" cssclass="slplugin" pluginbackground="transparent"
windowless="true"/>
div>
再运行一下程序:
这时silverlight显示在文字的上面,由于设置为背景为透明的,这样就可以看到一部分文字。
结束语
本文内容比较少,简单介绍了混合silverlight和html——silverlight插件的无窗口模式相关内容,其实就是windowless属性的设置:)
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/