【问题标题】:Windows Form 1 Google Search button that opens second Windows Form and loads PageWindows Form 1 Google Search 按钮,可打开第二个 Windows 窗体并加载页面
【发布时间】:2017-02-23 22:46:57
【问题描述】:

所以这是我的设置,因此您可以更好地了解我想要做什么。我有以下内容: Windows 窗体 1(工具箱),带有一个用于 Google 搜索的文本框和一个用于加载辅助 Windows 窗体(搜索引擎)的“搜索单击”按钮。我想做以下事情。

  • 在我的文本框中输入搜索条件并单击“搜索”按钮,该按钮将打开辅助 Windows 窗体(搜索引擎),该窗体将使用“WebBrowser1”在(搜索引擎)窗体上加载 google 搜索

任何帮助将不胜感激。如果您可以提供代码而不是去哪里最好:)

更新的代码:打开 Google 搜索引擎但不显示在 Webbrowser1 上。任何额外的帮助将不胜感激

Form 1 搜索按钮点击代码:

namespace Plumchoice_Toolbox
{
  public partial class plumchoice_Form1 : Form
  {
    public plumchoice_Form1()
    {
        InitializeComponent();
    }

    private void plumchoice_Form1_Load(object sender, EventArgs e)
    {

    }

    //Search Engine Form 1 added

    //// Search Button that opens the Search Engine
    private void button18_Click(object sender, EventArgs e)
    {
        Google_Search.SearchEngineForm1 frm2 = new      Google_Search.SearchEngineForm1();
        frm2.searchAddress = "http://www.google.com/webhp?hl=en&tab=ww#hl=en&tbo=d&output=search&sclient=psy-ab&q=" + textBox3.Text.Replace(" ", "+");
        frm2.Show();
    }

Webbrowser1 代码

namespace Google_Search
{
  public partial class SearchEngineForm1 : Form
  {
    public SearchEngineForm1()
    {
        InitializeComponent();
    }

    public string searchAddress;
    private void PlumChoiceToolboxForm1_Load(object sender, EventArgs e)
    {
        webBrowser1.Url = new Uri(searchAddress);
    }

【问题讨论】:

    标签: c# c#-4.0 c#-3.0


    【解决方案1】:

    你可以这样做:在form1搜索按钮点击

    此代码适用于具有搜索文本框和开始搜索按钮的 Form1。我认为(但不确定)它与您的 Toolbox 表单相同。

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
    
        private void Form1_Load(object sender, EventArgs e)
        {
    
        }
    
        private void Search_Click(object sender, EventArgs e)//When user clicks on search button
        {
            SearchEngineForm1 frm2 = new SearchEngineForm1();
            frm2.searchAddress = "https://www.google.com/search?q=" + txtSearch.Text.Replace(" ", "+");
            frm2.Show();
        }
    }
    

    下面是点击搜索按钮后会打开的Form2SearchEngineForm1

    public partial class SearchEngineForm1 : Form
    {
        public SearchEngineForm1()
        {
            InitializeComponent();
        }
    
        public string searchAddress;
        private void SearchEngineForm1_Load(object sender, EventArgs e)
        {
            webBrowser1.Url= new Uri(searchAddress);
        }
    }
    

    在你的代码中你有一个错误:

    private void PlumChoiceToolboxForm1_Load(object sender, EventArgs e)
    {
        webBrowser1.Url = new Uri(searchAddress);
    }
    

    这个空白是什么?这永远不会着火。您需要双击 SearchEngineForm1 表单(表单上的空白区域)将此空白添加到您的代码中:

    private void SearchEngineForm1_Load(object sender, EventArgs e)
    {
    
    }
    

    不要忘记双击我说的。仅粘贴此内容对您没有帮助!

    然后在它的大括号 {} 之间输入webBrowser1.Url= new Uri(searchAddress); 以得到这个:

    private void SearchEngineForm1_Load(object sender, EventArgs e)
    {
        webBrowser1.Url= new Uri(searchAddress);
    }
    

    【讨论】:

    • 感谢您的回复 Farzin,您能否回复使用名为“Toolbox”的 Form 1 类和名为“SearchEngineForm1”的 Form 2 类的场景,以便我更好地理解?再次感谢您!
    • 我添加了代码,它加载了 Form2 SearchEngineForm1 但在 browser1 项中没有加载页面。
    • Form1 代码:private void button18_Click(object sender, EventArgs e) { Google_Search.SearchEngineForm1 frm2 = new Google_Search.SearchEngineForm1(); frm2.searchAddress = "google.com/search?q=" + textBox3.Text.Replace(" ", "+"); frm2.Show(); }
    • 代码表单 2 SearchEngineForm1 命名空间 Google_Search { public partial class SearchEngineForm1 : Form { public SearchEngineForm1() { InitializeComponent(); } 公共字符串搜索地址;私人无效 PlumChoiceToolboxForm1_Load(对象发送者,EventArgs e){ webBrowser1.Url = new Uri(searchAddress); }
    • 对不起,我迟到了。您的 form1 是否有名为“Toolbox”的搜索文本框?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-25
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-06
    相关资源
    最近更新 更多