Как показать, что строка поиска в WebBrowser управляет в Windows Form?
Я могу ошибаться, но я не верю, что 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();
}
}
Edit: Моя форма имеет текстовое поле
с именем textBox1, кнопка
с именем button1 и WebBrowserControl
с именем webBrowser1
Вы можете создать текстовое поле и затем заполнить его свойством site, я думаю
Перетащите текстовое поле в вашу форму. Используйте метод 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();
}