C#的WEBBROWSER与JS交互的方法,转载

原地址:http://www.jb51.net/article/57574.htm

本文实例总结了C#的WEBBROWSER与JS交互的方法。分享给大家供大家参考。具体实现方法如下:

一、实现WebBrowser内部跳转,阻止默认打开IE

1、引用封装好的WebBrowserLinkSelf.dll实现

复制代码代码如下:

}

private void WebBrowserOnNewWindow(object sender, CancelEventArgs e)

{

dynamic browser = sender;

dynamic activeElement = browser.Document.activeElement;

var link = activeElement.ToString();

this.webBrowser.Navigate(new Uri(link, UriKind.RelativeOrAbsolute));

e.Cancel = true;

}

}

2、引用com:Microsoft Internet Controls实现(参考MSDN:http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser.aspx public partial class MainWindow : Window

复制代码代码如下:

internal interface IServiceProvider

{

[return: MarshalAs(UnmanagedType.IUnknown)]

object QueryService(ref Guid guidService, ref Guid riid);

}

}

</em>

二、WebBrowser与JS的交互

1、与页面标签的交互

复制代码代码如下:

2、数据交互

复制代码代码如下:

}

[System.Runtime.InteropServices.ComVisible(true)]

public class ScriptEvent

{

//供JS调用

public void ShowMessage(string message)

{

MessageBox.Show(message);

}

}

希望本文所述对大家的C#程序设计有所帮助。