2009-08-14 3 views
2

мне нужно добавить строки, поступающие из различных RichTextBoxes с различными шрифтами в один RichTextBox сохраняя оригинальные шрифты (более типично иногда я получаю формат XML, где шрифты для подстрок определены.)Construct строка с несколькими шрифтами

Есть способ построения этой строки в памяти, а затем просто поместить ее в RichTextBox? Если нет, есть ли другой способ?

ответ

2

Попробуйте это:

richTextBox1.SelectionStart = 0; 
richTextBox1.SelectionLength = 10; 
richTextBox1.SelectionFont = new Font("Veradana", 8.25F); 

Еогеаспа блок с другим шрифтом просто повторить код

+0

+1 для наглядного примера. – Dykam

+0

У меня есть много текстовых полей rih, подобных этому ... – 2009-08-14 13:18:50

0

This answer дает пример кода для рисования текста с разными цветами в поле изображения. Вы можете легко изменить его, чтобы нарисовать текст с разными шрифтами. Если вам нужна прокручиваемость RichTextBox, вы можете поместить окно изображения на панель.

Update: так как вы должны использовать RichTextBox, this link показывает вам, как превратить исходный XML в формате RTF, которые вы можете загрузить в ваш RichTextBox. Для этого вам необходимо создать документ XSLT, описывающий, как преобразовать XML в RTF. В приведенную ссылку я приведу образец XSLT-документа; вам придется изменить этот XSLT, основываясь на том, как разные шрифты указаны в вашем исходном XML-документе (если вы разместите образец исходного XML-кода, мы, вероятно, могли бы помочь вам изменить XSLT соответственно).

+0

Это должно быть rictextbox, поскольку текстовое содержимое редактируется – 2009-08-14 13:17:48

0

Вы можете сохранить что-либо в RichTextBox в .rtf формате, используя свой

SaveFile
метод внутри
RichTextBoxStreamType.RichText
формат и если вы хотите загрузить сохраненный формат, вызовите метод
LoadFile

Источник here

Смежные вопросы