html里js代码:
commitDataToC("js传数据给C#"); //把数据传给C# function commitDataToC(str) { // alert(str); window.external.SaveProgress(str); }winform里C#代码:
//为了使网页能够与winform交互 将com的可访问性设置为真 [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] [System.Runtime.InteropServices.ComVisibleAttribute(true)] public void SaveProgress(string str) { MessageBox.Show("html在调用C#中的方法。SaveProgressstr=" + str); }
二、C#调用js方法,C#传参给js
winform里C#代码:
//为了使网页能够与winform交互 将com的可访问性设置为真 [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")] [System.Runtime.InteropServices.ComVisibleAttribute(true)] if (Wbr.Document != null) Wbr.Document.InvokeScript("WfToHtml", objArray);html里js代码:
//C#传数据给js function WfToHtml() { alert("wf调用html里面的js函数"); }
注意:js里不能添加console代码,不然在winform里C#会接收不到js传过来的参数,js调用C#代码也会失效。
参考:
http://www.cnblogs.com/zeroLove/p/3912460.html