前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >向silverlight传递自定义参数

向silverlight传递自定义参数

作者头像
用户1172164
发布2018-01-16 15:23:27
8420
发布2018-01-16 15:23:27
举报

在silverlight往往还是有一些获取不到的东西,比如说客户机的ip等的数据.可以通过初始化sl时把参数传入sl中.

1.修改page类

代码语言:js
复制
public Page(string passText)
 {
     InitializeComponent();
     txtPass.Text = passText;
 }

2.修改App.xaml.cs

代码语言:js
复制
 private void Application_Startup(object sender, StartupEventArgs e)
         {
 // Load the main control
  string passText = e.InitParams["passText"];
 this.RootVisual = new Page(passText);
         }

3.传递参数

  • 方法1: Code
代码语言:js
复制
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Assembly="System.Web.Silverlight" Namespace="System.Web.UI.SilverlightControls"
    TagPrefix="asp" %>
<!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 runat="server">
    <title>passtxt</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <div style="height: 100%;">
            <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/HowTo.xap" Version="2.0"
                Width="100%" Height="100%"/>
        </div>
    </div>
    </form>
</body>
</html>


  protected void Page_Load(object sender, EventArgs e)
         {
             Xaml1.InitParameters = "passText=参数_方法1";
         }
 
  • 方法2:
代码语言:js
复制
  <object data="data:application/x-silverlight," type="application/x-silverlight-2-b1" InitParameters="passText=123" width="100%" height="100%">
 <param name="InitParams" value="passText=参数_方法2" />
 <param name="source" value="ClientBin/HowTo.xap"/>
 <param name="onerror" value="onSilverlightError" />
 <param name="background" value="white" />
 
 <a href="http://go.microsoft.com/fwlink/?LinkID=108182" style="text-decoration: none;">
 <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/>
 </a>
 </object>
 

传递多个参数也是一样的.定义的时候改一下.后边的方法也类似.

代码语言:js
复制
public Page(string passText1,string passText2)
 {
     InitializeComponent();
     txtPass1.Text = passText1;
     txtPass2.Text = passText2;
 }

参数间用","隔开

代码语言:js
复制
<param name="InitParams" value="passText1=参数1,passText2=参数2" />

ok 获取参数完成 ;)

附录:获取客户机ip  

代码语言:js
复制
"System.Net.Dns.GetHostAddresses(System.Net.Dns.GetHostName()).GetValue(0).ToString();"

作者:nasa

联系:nasa_wz@hotmail.com

QQ:12446006

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2008-04-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档