国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C#后臺程序與HTML頁面中JS方法互調(功能類似于Ajax中的DWR)

2019-11-17 03:04:56
字體:
來源:轉載
供稿:網友
C#后臺程序與HTML頁面中JS方法互調(功能類似于Ajax中的DWR)

此方法適用于 C#中嵌入WebBrowser(瀏覽器) 通過瀏覽器中加載的頁面與C#的后臺代碼進行交互。

一、C#程序

1、在C#窗體中添加WebBrowser(瀏覽器),將頁面的URL添加到瀏覽器中。

2、窗體代碼添加 using System.Runtime.InteropServices;//和Html頁面交互使用

在類的上一行添加 [ComVisible(true)]//和Html頁面交互使用

在類的構造其中添加

this.webB.ObjectForScripting = this; //和Html頁面交互使用

如:

using System.Runtime.InteropServices;

namespace slgdjb { [ComVisible(true)] public partial class Frm_Index : Form { public Frm_Index() { InitializeComponent(); this.webB.ObjectForScripting = this; }

}

}

3、添加供Html頁面調用的方法

如:

該方法的方法名即為Html頁面JS中所要調用的方法名

public stringmyAction(object para) { //方法內容在此寫 }

4、C#程序調用Html頁面JS方法

首先要獲得Html頁面的Document,然后再調用Html頁面的JS方法

如:

HtmlDocument doc = webB.Document; string[] objArray = new string[2]; objArray[0] = "a";

objArray[1] = "b"; //調用Html頁面js方法,JSMonth為JS方法名,objArray為傳遞的參數。

//JS中不能接收對象,但可以接收整形、字符串、字符串數組。 doc.InvokeScript("JSMonth",objArray);

二、Html頁面中JS方法調用C#方法

1、在Html頁面JS中調用C#程序的方法,若C#中的方法有返回值,則JS可以得到。

如:

//myAction為C#中方法的方法名,para為該方法的參數。

var str = window.external.myAction(para);

2、供C#調用的Html頁面中JS的方法

該方法的方法名即為C#中所要調用的方法名 obj即為要傳遞的參數。若傳遞的參數為數組,則在JS

方法中可直接使用arguments[index(數組參數編號)]表示數組的參數值。arguments為JS默認數組參數,其好處在于JS方法不必寫傳遞的參數。

functionJSMonth(obj){

//若obj為數組,則obj[0]等價于arguments[0];其方法名可改寫為JSMonth()

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东平县| 吐鲁番市| 中牟县| 驻马店市| 浦江县| 金山区| 紫阳县| 无为县| 宁乡县| 赣榆县| 陆丰市| 托克逊县| 永宁县| 靖远县| 河曲县| 寻甸| 峨眉山市| 浦县| 繁峙县| 宣汉县| 庆安县| 沾益县| 新闻| 尉氏县| 焦作市| 江孜县| 新巴尔虎右旗| 信宜市| 长沙县| 沂南县| 安义县| 常宁市| 克山县| 正镶白旗| 新昌县| 仁化县| 芒康县| 广昌县| 乐都县| 嘉义县| 汉阴县|