C# WinForm程序如何与js交互(转)

在使用C#开发winform程序过程中,我们经常会碰到嵌入了一个WebBrowser的浏览器控件。很多时候,我们需要在程序里控制网页的显示方式,或者调用网页当中的某个JS函数,反过来,也有可能网页也需要调用程序当中的函数来实现某些功能。下面我给大家讲解下如何互相进行交互。 
    程序调用JS脚本如下: 
    JS脚本代码:

 <script language=”javascript”>
 function  ShopXG(infor)
 {
  alert(‘我要开网店、携购独立网店系统,模板最全,最专业的系统!’);
  return;
 }
 </script>
 
    C#代码调用如下: 
 using System.Security.Permissions;
 
    注意: 类定义前需要加上下面两行,否则调用失败! 
 [PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
 [System.Runtime.InteropServices.ComVisibleAttribute(true)]
 
    调用的函数: 
 webBrowser1.Document.InvokeScript("ShopXG ", new string[] {‘ssss’});
 
    JS中调用C#函数示例: 
    C#函数如下: 
 public void ShowMessage(string message) 
 {
  MessageBox.Show(“免费开网店,携购独立网店系统诚邀您的加盟!”);
 }
 
    JS里的调用方法: 
 
<script language=”javascript”>
 function  InvokeFunc()
 {
  window.external.ShowMessage(‘呵呵’);
 }
 </script>
 
    在使用C#开发winform程序过程中,我们经常会碰到嵌入了一个WebBrowser的浏览器控件。很多时候,我们需要在程序里控制网页的显示方式,或者调用网页当中的某个JS函数,反过来,也有可能网页也需要调用程序当中的函数来实现某些功能。下面我给大家讲解下如何互相进行交互。 
    程序调用JS脚本如下: 
    JS脚本代码: 
    
<script language=”javascript”> 
    function ShopXG(infor) 
    { 
        alert(‘我要开网店、携购独立网店系统,模板最全,最专业的系统!’); 
        return; 
    } 
</script> 
 
    C#代码调用如下:

 using System.Security.Permissions;
 
    注意: 类定义前需要加上下面两行,否则调用失败! 
 [PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
 [System.Runtime.InteropServices.ComVisibleAttribute(true)]
 
    调用的函数: 
 webBrowser1.Document.InvokeScript("ShopXG ", new string[] {‘ssss’});
 
    JS中调用C#函数示例: 
    C#函数如下: 
    public void ShowMessage(string message) 
    { 
        MessageBox.Show(“免费开网店,携购独立网店系统诚邀您的加盟!”); 
    } 
    JS里的调用方法: 
    <script language=”javascript”> 
    function InvokeFunc() 
    { 
        window.external.ShowMessage(‘呵呵’); 
    } 
    </script> 

posted on 2009-05-06 11:44  Ryan.L.R  阅读(328)  评论(1)    收藏  举报

导航