【发布时间】:2009-12-17 18:44:44
【问题描述】:
如何在 Windows 窗体的 WebBrowser 控件中显示地址栏?
【问题讨论】:
标签: c# .net webbrowser-control
如何在 Windows 窗体的 WebBrowser 控件中显示地址栏?
【问题讨论】:
标签: c# .net webbrowser-control
我可能弄错了,但我不相信 WebBrowserControl 包含地址栏、工具栏等。我相信您必须创建自己的地址栏。您可以使用 Navigated 或 Navigating 事件来确定 URL 何时更改并更新文本框。
private void button1_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(textBox1.Text))
{
webBrowser1.Navigate(textBox1.Text);
}
}
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
if (textBox1.Text != e.Url.ToString())
{
textBox1.Text = e.Url.ToString();
}
}
编辑:我的表单有一个名为 textBox1 的 TextBox、一个名为 button1 的 Button 和一个名为 webBrowser1 的 WebBrowserControl
【讨论】:
你可以制作一个文本框,然后用我认为的站点属性填充它
【讨论】:
将文本框拖放到表单中。 使用 URL.ToString 方法将文本框 .text 值设置为该 url 字符串:
Dim strURL As String
strURL = ""
If Me.TextBox1.Text.Length = 0 Then
Me.TextBox1.Focus()
Me.TextBox1.BackColor = Color.Red
Else
If InStr(Me.TextBox1.Text, "http://") = 0 Then
strURL = "http://" & Me.TextBox1.Text.ToString()
Else
strURL = Me.TextBox1.Text.ToString()
End If
Me.WebBrowser1.Navigate(New System.Uri(strURL))
Me.TextBox1.Text = Me.WebBrowser1.Url.ToString()
End If
这里是 C#:
string strURL = null;
strURL = "";
if (this.TextBox1.Text.Length == 0) {
this.TextBox1.Focus();
this.TextBox1.BackColor = Color.Red;
}
else {
if (Strings.InStr(this.TextBox1.Text, "http://") == 0) {
strURL = "http://" + this.TextBox1.Text.ToString();
}
else {
strURL = this.TextBox1.Text.ToString();
}
this.WebBrowser1.Navigate(new System.Uri(strURL));
this.TextBox1.Text = this.WebBrowser1.Url.ToString();
}
【讨论】: