zoukankan      html  css  js  c++  java
  • 从 JavaScript 调用silverlight方法

    先决条件

    • Silverlight 版本 4.

    • 用于 Visual Studio 2010 的 Silverlight 4 Tools.

    • Microsoft Visual Studio 2010.

    创建 Silverlight 项目和测试页

      略

    注册用于客户端脚本访问的托管代码

    1、

    public Page()   
    {    
       InitializeComponent();   
       HtmlPage.RegisterScriptableObject("Page", this);  
       this.timer = new DispatcherTimer();  
       this.timer.Tick += new EventHandler(Timer_Tick);   
       this.timer.Interval = TimeSpan.FromMilliseconds(400);   
    }


     

    2、在 script 元素中,创建 Silverlight 应用程序完成加载后将调用的 pluginLoaded 函数。

    <script type="text/javascript" language="javascript">     
     var slcontrol = null;    
      function pluginLoaded(sender, args) {  
                if (sender != null && sender != 0) {           
       slcontrol = sender.getHost();      
        }   
       }    
      function StartPare( a, b)      {  
         if (slcontrol) {             
     slcontrol.Content.Page.StartPara(a,b);    
          }    
      }     
     function ReturnPare() {         
     if (slcontrol) {            
      var j = slcontrol.Content.Page.StopPara();        
          alert(j.toString());         
     }
     }  
    </script>


     

    3、Silverlight 控件标记与下面的代码类似:

    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="400" height="300">
              <param name="source" value="ClientBin/JavaScriptToSilverlight.xap"/>
              <param name="onError" value="onSilverlightError" />
              <param name="background" value="white" />
              <param name="minRuntimeVersion" value="4.0.50401.0" />
              <param name="autoUpgrade" value="true" />
              <param name="onload" value="pluginLoaded" />
              <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50401.0" style="text-decoration:none">
                   <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/>
              </a>
            </object>
    使用 JavaScript 获取和设置托管代码属性值

    该按钮的 HTML 标记

    显示行号 复制代码
    1. <input type="button" value="StartPare" onclick="StartPare(2,3);" />
      
    2.  <input type="button" value="ReturnPare" onclick="ReturnPare();" />
      

    silverlight页面的代码

    int j = 0;
       [ScriptableMember]
       public void StartPara(int a, int b)
       {
            j = a + b;
       }
       [ScriptableMember]
       public int StopPara()
       {
           return j;
       }
  • 相关阅读:
    MOCK服务小结
    微信收款「商业版」与「个人版」有什么区别?看完这篇你就懂!
    LB 负载均衡的层次结构
    中兴应用之星携手天翼开放平台:让APP开发更简单
    常见面试题之二叉树
    【深入JAVA EE】Spring配置文件解析
    spring-struts-mybatis整合错误集锦
    Redis安装
    Atitit.ati&#160;dwr的原理and设计&#160;attilax&#160;总结&#160;java&#160;php&#160;版本号
    Android UI开发神兵利器之Icon
  • 原文地址:https://www.cnblogs.com/z_lb/p/1789175.html
Copyright © 2011-2022 走看看