如何通过js在网页中获取和修改Silverlight中的对象。使用FindName方法。例子代码Silverlight中xaml:<UserControl x:Class=”html_set_sl.Page” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml” Width=”400″ Height=”300″> <Grid x:Name=”LayoutRoot” Background=”White”> <Rectangle x:Name=”r01″ Width=”300″ Height=”200″ Fill=”Aqua”></Rectangle> </Grid></UserControl>在场景中定义了一个矩形(Rectangle),名字为r01以及相关属性。aspx页面中调用Silverlight:<asp:ScriptManager ID=”ScriptManager1″ runat=”server”></asp:ScriptManager> <div style=”height:100%;”> <asp:Silverlight ID=”Xaml1″ runat=”server” Source=”~/ClientBin/html_set_sl.xap” MinimumVersion=”2.0.30523″ Width=”100%” Height=”100%” /> </div>Silverlight ID为Xaml1.javascript代码:<script type=”text/javascript”> function setSilverlight() { silverlight = document.getElementById(“Xaml1″); //引用Silverlight插件到一个对象 var Rectangle0 = silverlight.content.FindName(“r01″); //将Sl中的矩形r01引用到一个对象 Rectangle0["Height"]=”300″; //设置举行的高为300 //alert(Rectangle0["Height"]); //读取矩形的高 }</script>然后弄个button,加上事件就可以了。<input id=”Button1″ type=”button” value=”button” onclick=”setSilverlight()” />这样就能够在页面中通过js对Silverlight中的对象进行操作了。
