2016-07-26 5 views
0

Я хочу, чтобы пользовательские значения ввода, которые я буду сохранять в строке, а затем интерполируем эту строку в вывод консоли. Есть ли способ изменить цвет интерполированной строки. Мне известно использование Console.Background/ForegroundColor, но до сих пор они изменили цвет всего вывода. Лучшая помощь будет, если был какой-то способ использовать код сродниКак изменить цвет интерполированной строки?

Console.WriteLine($"This would be the {string}."

и есть {строка} быть разного цвета, но я буду включать все, что работает.

+0

Рассматривали ли вы с помощью Console.Write() вместо (без перерыва символа перевода строки в конце каждого вызова) и просто разделяя вашу строку на отдельные вызовы? – redunderthebed

+1

использовать resetcolor после написания конкретного цветного текста ....... http: //www.dotnetperls.com/console-color –

ответ

0

Надеется, что это будет делать трюк для вас

string letters = $"This would be the {string}." 
string ColoredLetters = {string}; // Whatever is your string 
Char[] array = letters.ToCharArray(); 
void WriteLineWithColoredLetter(string letters, char c) 
{ 
    var NormalWrite = letters.IndexOf(c); 
    Console.Write(letters.Substring(0, NormalWrite)); 
    Console.ForegroundColor = ConsoleColor.Red; 
    Console.Write(ColoredLetters); 
    Console.ResetColor(); 
    Console.WriteLine(letters.Substring(NormalWrite + 1)); 
} 
Смежные вопросы