C# foreach循环中的计时器

C# foreach循环中的计时器,c#,timer,foreach,sendkeys,C#,Timer,Foreach,Sendkeys,我编写了一个代码,用foreach读取richtextbox中的每一行 foreach (string str in textBox3.Lines) { SendKeys.Send(str + " \n"); SendKeys.Send("{ENTER}"); } 但问题是,由于线路太多,它崩溃了。所以我想的是在输入send键之后做一个计时器。我用Thread.Sleep和我在互联网上搜索过的所有东西试过了,但是没有结果 使用而不是发送,它将不会

我编写了一个代码,用foreach读取richtextbox中的每一行

foreach (string str in textBox3.Lines)
{                
    SendKeys.Send(str + " \n");
    SendKeys.Send("{ENTER}");
}
但问题是,由于线路太多,它崩溃了。所以我想的是在输入send键之后做一个计时器。我用Thread.Sleep和我在互联网上搜索过的所有东西试过了,但是没有结果

使用而不是
发送
,它将不会继续,直到接收方处理完消息


但是,除了发送键之外,可能还有更好的方法来完成您想做的事情,如果您添加更多关于您要完成的事情的详细信息,我可以尝试使用其他可能更好的选项来更新此答案。

将此信息发送到另一个应用程序可能比模拟键盘输入更好。这可能是你最好的选择,而不是在这么多数据的情况下增加延迟。谢谢,这正是我想要的。我现在遇到了另一个问题。我把我的文本框变成了一个richTextBox。我有一大堆行,希望他们把它们一一添加到另一个文档中。我在richTextBox中有800行不同的内容。现在的问题是,当我运行它时,当它位于richTextBox的第15行时,它会返回到第1行。我试图在SendKeys、System.Threading.Thread.Sleep(1200)之后放置一个计时器。但它仍然不起作用。