2009-09-18 189 views
2

如何使用WPF中的WebBrowser控件來使用搜索引擎的uri和輸入鍵進行導航?WebBrowser - 使用搜索引擎uri和輸入關鍵字搜索?

例如,如果我有以下功能

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

我怎樣才能concatnate URI和關鍵字作爲蘇哈URI = www.google.com和關鍵字= WPF。 我想在窗口中搜索'WPF'的結果嗎?

+1

您可能已創造了傳奇300,000篇文章。嗚! – 2009-09-18 09:09:21

+1

仍然沒有答案... – 2009-09-18 11:56:21

回答

10

右鍵。

什麼,你需要做的是從您要使用的主要提供者獲得「搜索字符串」,例如與谷歌,它會是這樣的:

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

而對於,這會工作:

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, 
} 
+0

請記住,您可能還需要對搜索字符串進行網址編碼。 – rossisdead 2009-09-29 02:44:21