如何将HTML或aspx页面嵌入到Silverlight中

来源:互联网 发布:互联网大数据时代论文 编辑:程序博客网 时间:2024/05/16 16:05

怎么在Silverlight中嵌入其他页面如:html,aspx或jsp页面,这里写一个简单的使用方法,供大家参考:

下载第三方控件的dll,这里提供一个下载。

 

下面是这个工具的的介绍:Silverlight

下面是配置步骤:

1):将下载资源中的dll(Divelements.SilverlightTools.dll ),添加到Silverlight项目的引用中去。

 

2):在工具箱上右键 ,选择“选择项”,然后浏览到上面那个dll文件所在的位置,点击添加即可。

 

3):将刚才新添加的组件拖到silverlight编辑页面中,这时自动添加了对命名空间的引用

xmlns:divtools="clr-namespace:Divelements.SilverlightTools;assembly=Divelements.SilverlightTools"

 

4):在要嵌入的位置加入HtmlHost组件,例如:

<Grid>

       <divtools:HtmlHost x:Name="htmlPlaceholderHost1"  SourceUri="http://www.baidu.com" Margin="-4,21,-1,0"/>

</Grid>

这个控件的SourceUri属性即是指向你的其他页面信息,只要给一个Uri地址即可。

 

 

5):最后不要忘了在silverlight 的宿主页,加上 <param name="Windowless" value ="true" />,否则会弹出窗口报错“You must be using the Silverlight plugin in windowless mode to use this control.”,示例如下:


 

 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head>    <title>TileViewAnimation</title>    <style type="text/css">    html, body {        height: 100%;        overflow: auto;    }    body {        padding: 0;        margin: 0;    }    #silverlightControlHost {        height: 100%;        text-align:center;    }    </style>    <script type="text/javascript" src="Silverlight.js"></script>    <script type="text/javascript">        function onSilverlightError(sender, args) {            var appSource = "";            if (sender != null && sender != 0) {              appSource = sender.getHost().Source;            }                        var errorType = args.ErrorType;            var iErrorCode = args.ErrorCode;            if (errorType == "ImageError" || errorType == "MediaError") {              return;            }            var errMsg = "Silverlight 应用程序中未处理的错误 " +  appSource + "\n" ;            errMsg += "代码: "+ iErrorCode + "    \n";            errMsg += "类别: " + errorType + "       \n";            errMsg += "消息: " + args.ErrorMessage + "     \n";            if (errorType == "ParserError") {                errMsg += "文件: " + args.xamlFile + "     \n";                errMsg += "行: " + args.lineNumber + "     \n";                errMsg += "位置: " + args.charPosition + "     \n";            }            else if (errorType == "RuntimeError") {                           if (args.lineNumber != 0) {                    errMsg += "行: " + args.lineNumber + "     \n";                    errMsg += "位置: " +  args.charPosition + "     \n";                }                errMsg += "方法名称: " + args.methodName + "     \n";            }            引发新错误(errMsg);        }    </script></head><body>    <form id="form1" runat="server" style="height:100%">    <div id="silverlightControlHost">        <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">          <param name="source" value="ClientBin/TileViewAnimation.xap"/>          <param name="onError" value="onSilverlightError" />          <param name="background" value="white" />          <param name="minRuntimeVersion" value="4.0.50401.0" />          <param name="autoUpgrade" value="true" />                  <param name="windowless" value="true"/> <!--这句话很重要必须得加-->          <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0" style="text-decoration:none">               <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="获取 Microsoft Silverlight" style="border-style:none"/>          </a>        </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>    </form></body></html>
 

 

 

贴一个我利用该控件 的一个四画面视频界面。

如何将HTML或aspx页面嵌入到Silverlight中?_www.fengfly.com

0 0
原创粉丝点击