當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可置於層之下,並且背景透明瞭。