Silverlight 置于悬浮层之下 背景透明的方法

当Silverlight整合到网页上的时候,也许不多见,但是也有可能需要将Silverlight置于某层之下,或者使背景透明。

 

就像FLASH一样,只需要设置标签属性就可以了。

 

首先看看如何将Silverlight设置为可置于层下

    在ASP.NET页里 将 Windowless 属性设置为"true"   及Windowless="true"

    在HTML页里 添加属性 <param name="Windowless" value="true" />

 

这样就可以了

 

之后,看看如何设置Silverlight背景透明

 

第一步,Silgerlight控件的容器的背景色设置为空 如:    <Grid x:Name="LayoutRoot" Background="White"> 改成<Grid x:Name="LayoutRoot" > 将Background 属性删除。这样Silverlight控件本身就可透明了。

 

第二步,添加上网页上,跟之前一样

    在ASP.NET,需要添加Windowless="true"属性,同时要将PluginBackground设置为Transparent。及PluginBackground="Transparent"。

    在HTML页上,添加<param name="Windowless" value="true" />,同时将background设置为#00000000 或者 Transparent 或者就直接留空 "",但是不可把background属性删除。如   <param name="background" value="" /> 或   <param name="background" value="Transparent " />或<param name="background" value="#00000000" />

 

最后的样子大概这样

 

HTML页中:

        <object data="data:application/x-silverlight," type="application/x-silverlight-2" width="20%" height="20%">
   <param name="source" value="SilverlightTest.xap"/>
   <param name="onerror" value="onSilverlightError" />
   <param name="background" value="Transparent" />
   <param name="minRuntimeVersion" value="2.0.31005.0" />
   <param name="autoUpgrade" value="true" />
   <param name="Windowless" value="true" />
   <a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">
        <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="获取 Microsoft Silverlight" style="border-style: none"/>
   </a>
  </object>

 

ASPX页中:  
  <asp:Silverlight ID="Silverlight1" runat="server" Height="50px"
            Source="~/SilverlightTest.xap" Width="200px" Windowless="true" PluginBackground="Transparent">
        </asp:Silverlight>

 

 

这样,就可以设置Silverlight可置于层之下,并且背景透明了。

 

 

posted @ 2009-04-29 13:24  ZetaChow晓代码  阅读(1030)  评论(0编辑  收藏  举报