Webbrowser控件加载html页面非常简单。首先拖一个webbrowser控件到窗体中,然后通过代码:webBrowser1.Navigate("cityApi.html");加载网页资源。
如果要实现winform与网页进行交互需要用到事件webBrowser1_DocumentCompleted(即html文档加载完成后进行交互):
winform后台可以通过语句:webBrowser1.Document.InvokeScript("loadInfo", new object[] {参数1,...,参数m});调用javascript函数loadInfo,实现将数据传到网页中;
javascript函数可以通过语句:window.external.ShowMsg(str);调用winform后台函数ShowMsg(string str);
下面的代码展示一个小例子:
【FrmCityApi.cs】
private void FrmCityApi_Load(object sender, EventArgs e)
{
webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.webBrowser1_DocumentCompleted);
//初始化webbrowser,保证js和C#的通信
webBrowser1.ObjectForScripting = this;
//加载webbrowser网页资源
webBrowser1.Navigate("cityApi.html");
}