C# Winform與JS交互


一、C#調用JS函數

1.JS代碼

< script language = "javascript" >
function Hello(msg)
{
    alert('我是JS函數,參數是:' + msg);
    return;
}
< / script >

2.C#代碼調用

public class Form1:Form
{
	public Form1()
	{
		InitializeComponent();

		string pathName = Application.StartupPath + "\\" + "HTMLPage1.htm";
		this.webBrowser1.ObjectForScripting = this;
		webBrowser1.Navigate(pathName);
	}
	
	public void Test()
	{
	  //調用的函數:
	  webBrowser1.Document.InvokeScript("Hello", new string[] {"ssss"});
	}
}

二、JS調用C#函數

1.C#函數

using System.Security.Permissions;

//注意: 類定義前需要加上下面兩行,否則調用失敗!當前類可以com組件的形式供外部調用
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[System.Runtime.InteropServices.ComVisible(true)]
public class Form1: Form
{
	public Form1()
	{
		InitializeComponent();
	}

	public void ShowMessage(string msg)
	{
		MessageBox.Show("我是Winform函數,參數是:" + msg);
	}
}

2.JS里的調用

< script language = "javascript" >
function InvokeFunc()
{
    window.external.ShowMessage("呵呵");
}
< /script >


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM