WebBrowser - 使用搜索引擎uri和输入关键字进行搜索?

时间:2009-09-18 07:12:09

标签: wpf wpf-controls webbrowser-control

如何使用WPF中的WebBrowser控件使用搜索引擎uri和输入键进行导航?

例如,如果我有以下功能

private void Search( Uri uri, string keyword )
{
}

如何将Uri和关键字连接为Uri = www.google.com和Keyword = WPF。 我想在窗口中找到'WPF'的搜索结果吗?

1 个答案:

答案 0 :(得分:10)

Righto。

您需要做的是从您要使用的主要提供商那里获取“搜索字符串”,例如谷歌,就是这样:

string.Format("http://www.google.com/search?q={0}", "GoogleMe");

对于 Bing ,这可行:

string.Format("http://www.bing.com/search?q={0}", "BingMe");

<强>雅虎

string.Format("http://search.yahoo.com/search?p={0}", "YahooMe");

遵循其他搜索引擎相同的模式。示例如下:

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    Search(SearchProvider.Google, "StackOverflow");
}

private void Search(SearchProvider provider, string keyword)
{
    Uri UriToNavigate = null;

    switch (provider)
    {
        case SearchProvider.Google:
            {
                UriToNavigate = new Uri(
                    string.Format("http://www.google.com/search?q={0}", keyword));                        
                break;
            }
        case SearchProvider.Bing:
            {
                UriToNavigate = new Uri(
                    string.Format("http://www.bing.com/search?q={0}", keyword));
                break;
            }
        case SearchProvider.Yahoo:
            {
                UriToNavigate = new Uri(
                    string.Format("http://search.yahoo.com/search?p={0}", keyword));
                break;
            }
    }

    Browser.Navigate(UriToNavigate);
}


enum SearchProvider
{
  Google = 0,
  Bing = 1,
  Yahoo = 2,
}