1

我是一名网络开发人员,但我正在尝试为游戏模拟器编写前端。因为我熟悉 html/css/javascript,所以理想情况下我想用它来完成我的所有布局。我需要知道的是,这是否会成为一个热门话题。我需要做一些事情,比如当用户单击浏览器控件上的元素时,使表单代码基于特定路径启动某些东西。

这可能吗?如果是这样,这是一个可怕的想法吗?我现在应该停下来只使用表单设计器吗?

4

1 回答 1

3

这篇文章帮助了我: http: //www.codeproject.com/Articles/35373/VB-NET-C-and-JavaScript-communication

具体来说:

在 form1(主表单)中添加导入语句,如 Imports System.Security.Permissions。向 form1 添加几个属性,例如:

    <PermissionSet(SecurityAction.Demand, Name:="FullTrust")> _
    <System.Runtime.InteropServices.ComVisibleAttribute(True)> _
    Public Class Form1
    End Class

然后

从 JavaScript 调用 VB.NET

继续上一个项目,在 form1 中添加以下代码行:

     Public Sub showVbHelloWorld()
         MsgBox("Hello world")
     End Sub

在您的 form1 加载事件中,添加这行代码 Me.WebBrowser1.ObjectForScripting = Me 这行代码的作用是,它将您的 form1 类公开给 HTML 页面上的 JavaScript。您可以公开任何类,只要将其对 COM 可见并将其权限设置为完全信任即可。

在您的 HTML 页面中,添加一个 Button,并在其单击事件上调用此函数:

    <script type="text/javascript">
       function showVbHelloWorld() {
          window.external.showVbHelloWorld();
       } 
    </script> 
于 2012-07-16T19:53:35.637 回答