如何在Windows窗体中显示WebBrowser控件中的地址栏?
答案 0 :(得分:7)
我可能会弄错,但我不相信WebBrowserControl包含地址栏,工具栏等。我相信你必须创建自己的地址栏。您可以使用Navigated
或Navigating
事件来确定网址何时更改并更新文本框。
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();
}
}
修改:我的表单有TextBox
名为textBox1,Button
名为button1,WebBrowserControl
名为webBrowser1
答案 1 :(得分:0)
你可以创建一个文本框,然后用我认为
的网站属性填充它答案 2 :(得分:0)
将文本框拖放到表单中。 使用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();
}