我正在使用silverlight3和vb.net ..我想将值从Default.aspx
传递到我的应用程序或主页面。我在default.aspx
页面写了代码,它返回客户端系统的本地IP地址,我希望在我的silverlight页面中使用相同的地址。
Dim clientIPAddress = System.Net.Dns
.GetHostAddresses(strHostName).GetValue(0).ToString()
此clientIPAddress
将获取客户端的本地IP,如192.168.1.12
。现在我希望将此值传递到我的主页面。
请将此值从default.aspx
传递到我的主页。
谢谢
答案 0 :(得分:0)
您的default.aspx页面将包含加载Silverlight插件的<object>
标记。您可以添加<param name="initParams
value =“clientID = 192.168.1.12”>
,如下所示: -
<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/Silverlight3App.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="3.0.40818.0" />
<param name="autoUpgrade" value="true" />
<param name="initParams` value="clientID=192.168.1.12"`>
<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>
</object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
</form>
除了你当然不会对IP地址进行硬编码,但你会用一些VB.NET代码(我不做VB.NET)注入它。
initParams参数是一组名称=值对,在Silverlight中作为IDictionary(Of String, String)
公开。您可以从Application Startup事件参数或Application.Current.Host.InitParams
。