通过Process.Start启动多个选项卡比打开它少1

时间:2013-11-07 21:11:26

标签: c# winforms .net-3.5 process.start

我有一个事件迭代GridControl中的每个选定行,并将Cell值传递给此方法:

    public void SearchForException(string ex)
    {
        if (string.IsNullOrEmpty(ex))
            return;

        var sb = new StringBuilder();

        if (ex.IndexOf("svn", StringComparison.OrdinalIgnoreCase) >= 0)
            sb.Append("SharpSVN ");

        sb.Append(ex);

        Process.Start(string.Format("https://www.google.com/search?q={0}",
            Uri.EscapeDataString(sb.ToString())));
    }

我尝试了2次测试:

  • 当我打开默认浏览器时调用事件
  • 当我没有打开默认浏览器时调用事件

测试#1在当前窗口中启动N个新选项卡。 测试#2启动一个带有N-1个标签的新窗口。

当我单步执行代码时,测试1和测试2都打开了N个标签。

我尝试在Thread.Sleep(25)方法的末尾添加SearchForException,这样可行......但我想知道是否有更合适的方法呢?如果用户的浏览器速度较慢(读取:Internet Explorer),则默认值为25毫秒可能不够长。

0 个答案:

没有答案