2009-08-14 8 views
2

je dois ajouter des chaînes provenant de différentes RichTextBoxes avec différentes polices dans un RichTextBox en conservant les polices d'origine (plus généralement parfois je reçois format XML où les polices pour les sous-chaînes est défini.)Construct chaîne avec plusieurs polices

Y at-il un façon de construire cette chaîne en mémoire, puis simplement le mettre dans un RichTextBox? Sinon, y a-t-il un autre moyen?

Répondre

2

Essayez ceci:

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

bloc foreach avec des polices différentes il suffit de répéter le code

+0

+1 pour l'exemple clair. – Dykam

+0

J'ai beaucoup de textboxes rih comme celui-ci ... –

0

This answer donne un exemple de code pour l'affichage de texte avec des couleurs différentes dans une zone d'image. Vous pouvez facilement le modifier pour dessiner le texte avec différentes polices. Si vous avez besoin de la défilement de la RichTextBox, vous pouvez placer la zone d'image sur un panneau.

Mise à jour: puisque vous devez utiliser un RichTextBox, this link vous montre comment transformer votre XML en RTF d'origine que vous pouvez charger dans votre RichTextBox. Pour ce faire, vous devez créer un document XSLT qui décrit comment transformer le XML en RTF. Le lien que j'ai inclus donne un exemple de document XSLT; vous devrez modifier ce XSLT en fonction de la façon dont les différentes polices sont spécifiées dans votre document XML original (si vous publiez un échantillon de votre XML original, nous pourrions probablement vous aider à modifier le XSLT en conséquence).

+0

Cela doit être une boîte rictext car le contenu du texte est modifiable –

0

Vous pouvez enregistrer quoi que ce soit dans RichTextBox dans .rtf format à l'aide de sa méthode

SaveFile
dans les formats
RichTextBoxStreamType.RichText
et si vous souhaitez charger le format enregistré, appelez
LoadFile
méthode
Source here

Questions connexes