Возможно, мне здесь не хватает чего-то очень простого, но я изо всех сил пытался изменить свойство RTF моего RichTextBox, чтобы применить цветовую кодировку к моему тексту. Вероятно, самый простой пример проблемы, с которой я столкнулся, - это установка свойства Rtf для включения таблицы цветов в его заголовок.
Строка RTF по умолчанию, возвращаемая свойством Rtf:
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}\viewkind4\uc1\pard\f0\fs17\par}
И новую строку RTF, которую я хотел бы установить с моей таблицей цветов:
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}{\colortbl;\red128\green0\blue0;\red0\green128\blue0;\red0\green0\blue255;}}\viewkind4\uc1\pard\f0\fs17\par}
И я установил это, используя:
RichTextBox richTextBox = new RichTextBox();
richTextBox.Rtf = rtfStr; // My new RTF string, as seen above.
Однако через отладчик можно заметить, что свойство Rtf упорно отказывается изменяться; никаких исключений не выбрасывается, просто отказывается меняться. Та же проблема возникает, когда я вставляю слова String.Replace (), чтобы включить вокруг них цветные теги RTF. Я также попытался отключить какие-либо свойства ReadOnly в текстовом поле.
Любые предложения были бы очень полезны, спасибо!
- Дэйв