private void 百度引擎ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string 搜索文字 = ""; if (搜索内容.Text != "") 搜索文字 = 搜索内容.Text; else 搜索文字 = "百度";
            打开网页(@"www.baidu.com/baidu?tn=daemon_dg&wd=" + 搜索文字);
        }
搜索内容.Text中输入:C#检测,点击按钮后只剩下一个C字,#后面的文字都没了?

解决方案 »

  1.   

    string.Formart("www.baidu.com/baidu?tn=daemon_dg&wd={0}",搜索文字) 行不?
      

  2.   

    目测是没有进行url转义造成的。
    如果函数/过程“打开网页”有使用System.Uri的重载或者可以修改为使用Uri,建议通过字符串构建一个Uri对象并传递。否则,可以考虑使用Uri.EscapeUriString函数进行转义。
      

  3.   

    private void 打开网页(string 网址)
            { System.Diagnostics.Process.Start(网址); }
      

  4.   

    前面url写死的话,用
    打开网页(@"www.baidu.com/baidu?tn=daemon_dg&wd=" + System.Uri.EscapeDataString(搜索文字));
      

  5.   

    private void 打开网页(string 网址)
       { System.Diagnostics.Process.Start(System.Uri.UnescapeDataString(网址)); }
    private void 打开网页(string 网址)
       { System.Diagnostics.Process.Start(System.Uri.EscapeUriString(网址)); }
    试过都不行,我系统WIN7
      

  6.   

    因为经常查找资料用多个搜索引擎,所以这样写
    private void 打开网页(string 网址)
    { System.Diagnostics.Process.Start(网址); }