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

silverlight 进行嵌套如asp.net 中 进行传递参数




asp.net中

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>CustomDashboard</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"  style="margin:0px auto 0; width:650px; height:320px;">
  <param name="source" value="ClientBin/ElectricDashboard.xap"/> <!--这里是指点调用哪个silverlight 文件-->
  <param name="onError" value="onSilverlightError" />
  <param name="background" value="white" />
  <param name="minRuntimeVersion" value="4.0.50826.0" />
  <param name="autoUpgrade" value="False" />
          <asp:Literal ID="InitParam" runat="server"></asp:Literal> <!--这里是进行silverlight 和asp.net 参数进行交互的地方-->
  <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.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>

asp.net的后台代码
           StringBuilder sb = new StringBuilder();
            sb.Append(" <param name=\"InitParams\" value=\"");
            sb.AppendFormat("vehicleId={0},Type={1}",Request.QueryString["vehicleid"],Request.QueryString["Type"]);
            sb.Append("\"></param>");
            InitParam.Text = sb.ToString();

在silverlight 中的app.xmal.cs界面进行接收传递过来的参数

string sessionId = e.InitParams["sessionId"];//得到传递的参数
this.RootVisual = new MainPage(sessionId);//加载的页面

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

相关推荐