您的位置:首页 > 编程语言 > ASP

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

2014-05-05 16:29 288 查看
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);//加载的页面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: