В настоящее время я пытаюсь создать словарь, который сопоставляет выбранный элемент с представлением списка с соответствующим строковым выводом в текстовом поле с расширенным форматированием. Я хотел бы выделить определенный текст в строке, который всегда будет одинаковым (постоянным), а также добавить динамический текст в строку, которая будет меняться.
Примерно так: ID: 8494903282
Где ID — это постоянный текст, который мне нужен, выделенный жирным шрифтом, а числа будут динамическим идентификатором, который меняется. Мне нужно будет иметь несколько строк с разными данными в этом формате, которые будут меняться:
ID: 8494903282
Имя: какое-то имя
Дата: 15 марта 2018 г.
В настоящее время у меня есть форматированное текстовое поле для вывода, и я пытаюсь использовать форматирование строк, чтобы делать то, что хочу, но это работает неправильно. По сути, мне нужно строковое значение, которое я могу сохранить в словаре, поэтому, когда элемент выбран, я могу просто установить для свойства rtf текстового поля значение этого элемента словаря.
Ниже у меня есть текущая строка формата, которую я пытаюсь установить для свойства rtf:
string s1 = string.Format(@"{{\rtf1\ansi \b Commit ID: \b0 {0}\line}}", entry.ID);
string s2 = string.Format(@"{{\b Author: \b0 {0}\line}}", entry.Author);
string s3 = string.Format(@"{{\b Date: \b0 {0}\line}}", entry.Date.ToString("d"));
string s4 = Environment.NewLine + Environment.NewLine + entry.Message;
contents = (s1 + s2 + s3 + s4);
Затем установите свойство rtf моего расширенного текстового поля:
LogContentsTB.Rtf = Logs[LogNamesLV.SelectedItems[0].Name];
Где logs — это словарь формы ‹ строка, строка >, который содержит строку формата для определенного элемента.
Однако я получаю следующий вывод вместо ожидаемого:
Это правильная форма вывода для первого элемента, но больше ничего не появляется. Если есть какие-либо другие способы сделать это, я открыт для предложений.
contents
вLogs
? - person Chetan Ranpariya   schedule 16.03.2018