在webbrowser控件中单击url打开win表单

时间:2014-09-26 21:29:19

标签: c# html windows-applications web-controls

我有一个Windows应用程序,我使用webbrowser控件来显示HTML文本。 问题是我在那个html中有一些链接,我需要他们在用户点击它们时打开另一个win表单。

我想在链接中写一下

<a href:????> click to show another win form</a>

或者还有另一种方法。请帮助。

感谢您的时间。

1 个答案:

答案 0 :(得分:2)

您可以通过执行以下操作在Windows应用中执行方法: 首先添加权限,所以在公共类Form1:Form

上面添加这个
[PermissionSet(SecurityAction.Demand, Name="FullTrust")]
[System.Runtime.InteropServices.ComVisibleAttribute(true)]

其次,您需要注册webbrowser控件才能调用表单函数,因此将其添加到Form_Load事件

this.WebBrowser1.ObjectForScripting = this;

然后您可以在主窗体中创建一个Sub。子必须是公共的。

public void doOpenForm()
{
    //your code to open the form here
}

在HTML中,执行以下操作:

<a href='' onclick='window.external.doOpenForm()'> click to show another win form</a>