VB.NET浏览器第1坑:浏览器应该有个地址栏

浏览器应该有个地址栏,在地址栏里输入网址,然后回车就显示对应网站

填坑:在公共控件里找到TextBox,拖放到窗口的合适位置,在属性栏里改名叫Address,好了我们有地址栏了。

接下来是地址栏与webbrowser的双向绑定。双向绑定的意思是:地址栏输入的网址回车之后会在webbrowser显示;如果点击webbrowser中的链接跳转到别的网页,地址栏也要跟着相应的更新为新的地址。

假定webbrowser控件的名字是默认的WebBrowser1。

Form1.vb的源代码页插入以下代码:

Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs)Handles WebBrowser1.DocumentCompleted
        Address.Text = WebBrowser1.Url.ToString()
End Sub

Private Sub Address_KeyDown(sender As Object, e As KeyEventArgs)Handles Address.KeyDown
        If e.KeyCode = Keys.Enter Then
            WebBrowser1.Navigate(Address.Text)
        End If
End Sub

真正的浏览器还有这个功能,输入sohu后,按Ctrl+Center,则自动补齐网址的www和com成为:www.sohu.com,并在浏览器打开。在上面代码的基础上稍加改进,判断回车的时候Ctrl键是否按下。

Private Sub Address_KeyDown(sender As Object, e As KeyEventArgs)Handles Address.KeyDown
        If e.KeyCode = Keys.Enter Then
            If e.Control Then
                Address.Text = "www." + Address.Text + ".com"
            End If
            WebBrowser1.Navigate(Address.Text)
        End If
End Sub

扫码关注我的公众号