2008-09-05 55 views
12

关于如何实现.NET(C#)控制台应用程序选项卡完成的任何想法? 我的意思是,当运行一个应用程序中,然后循环用户输入(例如,如果你不带任何参数运行Ftp.exe的),像这样:.NET控制台应用程序选项卡完成

 string line = string.Empty; 
     while (line != "exit") 
     { 
      //do something here 
      Console.ReadLine(); 
     } 

我知道我可能没有实际使用输入行,但我希望能够在检索用户输入的同一点完成标签填充。

回答

8

做一个Console.ReadKey()。

如果你得到一个Tab,看看你在命令缓冲区有什么,并循环你的可用命令。如果someCommand.Name.BeginsWith(currentinput),您有胜利者,您可以编写屏幕列出可能的命令。

如果只有一个(TM)你可以用什么用户已键入替换它:)

+0

使用readkey不能在readline中平行调用吗?所以它意味着你失去了readline功能,并且你需要循环访问readkey并手动追加/显示什么是输入。 Readline具有使用“向上”键的历史记录功能,您将失去该功能,或者需要使用readkey重新编码它。最好的选择是寻找混合解决方案。 (如使用Async readline?) – 2015-07-02 02:59:58

相关问题