微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Silverlight中嵌入HTML或aspx页面

http://www.cnblogs.com/smile-wei/archive/2012/10/23/2734939.html


在Silverlight中嵌入HTML或aspx页面

有好几次遇到有的同志们问,怎么在Silverlight中嵌入其他页面如:html,aspx或jsp页面,这里写一个简单的使用方法,供大家参考:

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

http://download.csdn.net/source/3231944

 

下面是这个工具的的介绍: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: ;
    }
    #silverlightControlHost {
        height: ;
        text-align:center;
    }
    </style>
    <script type=text/javascript" src=Silverlight.js"></script>
    <script type=
        function onSilverlightError(sender,args) {
            var appSource = "";
            if (sender != null && sender != ) {
              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消息: " + args.ErrorMessage +      \n;

            ParserError) {
                errMsg += 文件: " + args.xamlFile + ;
                errMsg += 行: " + args.lineNumber + 位置: " + args.charPosition + ;
            }
            else RuntimeError) {           
                if (args.lineNumber != ) {
                    errMsg += ;
                    errMsg += " +  args.charPosition + ;
                }
                errMsg += 方法名称: " + args.methodName + ;
            }

            引发新错误(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=">
          <param name=source" value=ClientBin/TileViewAnimation.xap"/>
          <param name=onErroronSilverlightError" />
          <param name=backgroundwhiteminRuntimeVersion4.0.50401.0autoUpgradetrue" />
                  <param name=windowless"/> <!--这句话很重要必须得加-->
          <a href=http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0text-decoration:none">
               <img src=http://go.microsoft.com/fwlink/?LinkId=161376" alt=获取 Microsoft Silverlightborder-style:none"/>
          </a>
        </object><iframe id=_sl_historyFramevisibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
    </form>
</body>
</html>

复制代码

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐