您的位置:首页 > 移动开发 > Objective-C

Silverlight Object 标签属性介绍、初始化参数的设置和获取、客户端系统信息获取

2010-02-15 19:02 711 查看

HTML元素属性介绍

Silverlight 作为网页的一部分宿主在浏览器当中,使用 HTML 元素的形式声明的。

当你在新建一个Silverlight项目的时候,VS会为你建立一个用于测试的HTML

<!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>SlSample1</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">


//js用来显示SL错误的脚本,这里可以自定义
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 = "Unhandled Error in Silverlight Application " +  appSource + "\n" ;

errMsg += "Code: "+ iErrorCode + "    \n";
errMsg += "Category: " + errorType + "       \n";
errMsg += "Message: " + args.ErrorMessage + "     \n";

if (errorType == "ParserError") {
errMsg += "File: " + args.xamlFile + "     \n";
errMsg += "Line: " + args.lineNumber + "     \n";
errMsg += "Position: " + args.charPosition + "     \n";
}
else if (errorType == "RuntimeError") {
if (args.lineNumber != 0) {
errMsg += "Line: " + args.lineNumber + "     \n";
errMsg += "Position: " +  args.charPosition + "     \n";
}
errMsg += "MethodName: " + args.methodName + "     \n";
}

throw new Error(errMsg);
}
</script>
</head>
<body>
<form id="form1" runat="server" style="height:100%">
<div id="silverlightControlHost">  -- Silverlight插件的容器
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="ClientBin/SlSample1.xap"/>  ----Silverlight文件的位置,相对和绝对路径均可
<param name="onError" value="onSilverlightError" />  -- 设置使用js来显示Sl的错误信息这里设置了一个方法名称,定义在上面
<param name="background" value="white" />   --背景色
<param name="minRuntimeVersion" value="3.0.40818.0" />  -- 最低可运行的版本
<param name="autoUpgrade" value="true" />  -- SL是否可以自动更新
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none">
<img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
</a>  -- SL的下载地址,这里可以指向一个局域网内的服务器,提供更快的下载速度
</object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
</form>
</body>
</html>


除此之外还有一下几个属性比较重要
<param name="enableHtmlAccess" value="true" />  -- 开启访问Javascript 和Dom的能力
<param name="enableGPUAcceleration" value="true" />  -- 开启GPU加速
<param name="initParams" value="id=12345,name=你好" />  --初始化参数的属性





获取初始化参数和网页参数

获取通过initParams 属性初始化的参数

App.xaml.cs文件

private void Application_Startup(object sender, StartupEventArgs e)
{
string para1 = e.InitParams.Keys["id"];
string para2 = e.InitParams.Keys["name"];
this.RootVisual = new MainPage(para1,para2);
}



 

获取URL传递的参数

 

foreach (String key in HtmlPage.Document.QueryString.Keys)
{
//添í加ó到?ListBox中D
listBox1.Items.Add(new TextBlock()
{
Text = String.Format(
"URL参?数y:o{0} = {1}", key,
HtmlPage.Document.QueryString[key])
});
}



 

任何XAML中获取initParams的方法

App.Current.Host.InitParams["id"];



 

获取客户端系统信息

 

          using System.Windows.Browser;

            //请先引用System.Windows.Browser;

            BrowserInformation browserInfo

                = HtmlPage.BrowserInformation;

            tbkName.Text = string.Format("Name: {0}"

                , browserInfo.Name);

            tbkVer.Text = string.Format("BrowserVersion: {0}"

                , browserInfo.BrowserVersion);

            tbkPlatform.Text = string.Format("Platform: {0}"

                , browserInfo.Platform);

            tbkUserAgent.Text = string.Format("UserAgent: {0}"

                , browserInfo.UserAgent);  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐