0

検索バー、タブコントロール、および Web ブラウザーがあり、タブを開くたびに Web ブラウザーが表示されますが、検索ボックスに入力すると、最初のページのタブでのみ機能するように見えます

これが私のタブコントロールコードです:

var browser = new WebBrowser();
browser.Dock = DockStyle.Fill;
browser.Url = new Uri(@"http://www.google.com");
myTabPage.Controls.Add(browser);
tabControl1.TabPages.Add(myTabPage);

そして私の検索バーコード:

webBrowser1.Navigate("www.google.com/search?q=" + searchField.Text);

これまでのところ、私のコードは機能していないようです。

private void searchTextBox_KeyDown(object sender, KeyEventArgs e)
{
    string browserURL = "";
    if (e.KeyCode == Keys.Enter)
    {
        if (yahoosearch.Checked == true)
        {
            browserURL = "www.search.yahoo.com/search?q=" + searchTextBox.Text;
        }
        else if (bingsearch.Checked == true)
        {
            browserURL = "www.bing.com/search?q=" + searchTextBox.Text;
        }
        else if (googlesearch.Checked == true)
        {
            browserURL = "www.google.com/search?q=" + searchTextBox.Text;
        }
    }

    foreach (var c in tabControl1.SelectedTab.Controls)
    {
        if (c is WebBrowser)
        {
            ((WebBrowser)c).Navigate(searchTextBox.Text);
        }
    }
}

私のWebブラウザが呼び出されている可能性がありますwebBrowser1

4

1 に答える 1

0

デザイナーで最初のタブを作成し、 の検索バーコードを呼び出したようですwebBrowser1。しかし、他のページではあなたの webbroser はvar browserであるため、navigate を呼び出す必要があります:

foreach (var c in tabControl1.SelectedTab.Controls)
{
    if (c is WebBrowser)
    {
        ((WebBrowser)c).Navigate(browserURL);
    }
}
于 2013-03-03T15:52:23.783 に答える