我有一个我正在使用的控制台应用程序,它使用Console.WriteLine(在单独的线程上)输出实时事件相关信息。该应用程序还允许用户通过Console.ReadLine()输入命令。当输出在用户输入命令的同时发生时,输出与输入混合。因此,我正在寻找一种方法来保持控制台窗口的底行保留输入,同时将输出设置为显示在倒数第二行(并从那里向上滚动),从而避免混合。
关于如何使其发挥作用的任何建议都将非常受欢迎。
谢谢!
答案 0 :(得分:2)
您可以使用Console.SetCursorPosition,然后使用Console.Write
http://msdn.microsoft.com/en-us/library/system.console.setcursorposition.aspx
但是你不能使用Console.ReadLine,尝试使用Console.ReadKey(false),然后在最后一行写入输入的键。实际上,您必须使用ReadKey和Write来模拟Console.ReadLine。