По сути, я хочу, чтобы в Console.ReadLine() отображалось максимум 200 символов для пользовательского ввода, прежде чем символы начнут подавляться. Я хочу, чтобы это было похоже на TextBox.MaxLength, за исключением ввода с консоли. Как бы я это сделал?
И я не хочу делать input.Substring(0, 200).
Решено:
Я использовал свою собственную функцию ReadLine, которая представляла собой цикл Console.ReadKey().
Это выглядит так, по сути:
StringBuilder sb = new StringBuilder();
bool loop = true;
while (loop)
{
ConsoleKeyInfo keyInfo = Console.ReadKey(true); // won't show up in console
switch (keyInfo.Key)
{
case ConsoleKey.Enter:
{
loop = false;
break;
}
default:
{
if (sb.Length < 200)
{
sb.Append(keyInfo.KeyChar);
Console.Write(keyInfo.KeyChar);
}
break;
}
}
}
return sb.ToString();
Всем спасибо