Возможно, мне здесь не хватает чего-то очень простого, но я изо всех сил пытался изменить свойство 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 в текстовом поле.
Любые предложения будут наиболее полезны, спасибо!