【问题标题】:VB.NET WebBrowser control - how do you submit to default browser?VB.NET WebBrowser 控件 - 如何提交到默认浏览器?
【发布时间】:2013-03-27 08:58:42
【问题描述】:

我的 VBForm 中有一个 webbrowser 控件。 它会在我的网站上查找网站并显示它。

WebBrowser1 中有表单提交按钮。 我希望这样当他们单击 WebBrowser1 网页中的按钮时,它会打开他们自己的浏览器来提交表单

我该怎么做?

(是的,这是我的网站。如果需要,我可以更改服务器上的 HTML。)

【问题讨论】:

  • 没有。我希望在 VB 浏览器控件中创建一个 LINK 以打开他们的浏览器以执行提交。不是为了如何从子或函数打开他们的浏览器。
  • 但如果你能告诉我如何在 System.Windows.Forms.WebBrowser 调用一个 sub 中的 SUBMIT BUTTON 然后打开他们的浏览器来提交表单,那么我可以使用它。

标签: vb.net visual-studio-2010 submit webbrowser-control


【解决方案1】:

感谢:Opening default web browser 和:vb.net WebBrowser links to Default Web Browser

还有一些试验和错误。工作结果如下:

Private Sub WebBrowser1_Navigating(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatingEventArgs) Handles WebBrowser1.Navigating
    'added a match string - if Allow is inside the URL link, then the WebBrowser control is allowed to navigate to it. otherwise use their browser.
    dim Allow as string = "http://mysite.com"
    If InStr(e.Url.ToString(), Allow) = 0 Then
        ' I'm trying here to cancel the event so that the WebBrowser1 control doesn't go there.
        e.Cancel = True
        ' then start a new process with their default browser
        System.Diagnostics.Process.Start(getDefaultBrowser(), e.Url.ToString())
    End If
End Sub

Private Function getDefaultBrowser() As String
    Dim browser As String = String.Empty
    Dim key As RegistryKey = Nothing
    Try
        key = Registry.ClassesRoot.OpenSubKey("HTTP\shell\open\command", False)

        'trim off quotes
        browser = key.GetValue(Nothing).ToString().ToLower().Replace("""", "")
        If Not browser.EndsWith("exe") Then
            'get rid of everything after the ".exe"
            browser = browser.Substring(0, browser.LastIndexOf(".exe") + 4)
        End If
    Finally
        If key IsNot Nothing Then
            key.Close()
        End If
    End Try
    Return browser
End Function

如果 Martin Parkin 没有发布那个重复的警告,我永远不会解决它。

另外 - 必须将我的链接更改为 METHOD = GET,帖子标题并不总是以这种方式翻译。

【讨论】:

    猜你喜欢
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 2012-06-11
    • 1970-01-01
    • 2014-02-05
    相关资源
    最近更新 更多