J'ai un RichTextBox personnalisé qui dérive de la classe de base RichTextBox. Son but est d'afficher du texte formaté. Cependant, tout Rtf chargé est affiché comme texte simple sans aucun formatage: police, taille de police, style de police etc.Impossible de charger correctement Rtf dans un RichTextBox
J'ai essayé le code suivant pour charger le Rtf: (Note: rtbEx est le contrôle de la zone de texte enrichi; RTF est une chaîne contenant le Rtf)
l'utilisation d'un flux de fichier:
FileStream tempFile = File.Open(@"C:\RTF.rtf", FileMode.Open); tempFile.Position = 0; rtbEx.LoadFile(tempFile, RichTextBoxStreamType.RichText); tempFile.Close();
Chargement du chemin d'accès spécifié:
rtbEx.LoadFile(@"C:\Users\Wilbur Omae\Desktop\RTF.rtf", RichTextBoxStreamType.RichText);
directement la mise en Rtf:
rtbEx.Rtf = RTF;
Lors de la vérification du Rtf du rtbEx, il semble être parfait Rtf, mais il est affiché sous forme de texte.
Quel pourrait être le problème?
Mise à jour 1: Le contrôle personnalisé RichTextBox est un contrôle au sein d'un Form
personnalisé qu'il doit afficher sous la forme d'un onglet.
Ceci est étrange. Lorsque j'utilise comme classe richtextbox standard et charge dans un fichier RTF avec du texte blod, je n'ai aucun problème avec l'affichage du formatage. Pourriez-vous fournir le fichier RTF et la classe personnalisée? –
@DanGardner Voici le RTF:. {\ ftf1 \ ansi \ ansicpg1252 \ deff0 \ deflang1033 {\ fonttbl {\ f0 \ fnil \ fcharset0 Microsoft Sans serif;} {\ f1 \ fnil \ fcharset0 Palatino Linotype;}} \ viewkind4 \ uc1 \ pard \ f0 \ fs17 \ par par \ par LoremIpsumDolor \ par LoremIpsumDolor \ par \ par \ par \ b \ FS16 Lorem \ i ipsum \ ul dolor \ FS56 LoremIpsumDolor \ ulnone \ b0 \ i0 \ f1 \ FS30 \ par } '. . Wordpad reconnaît et ouvre correctement le fichier RTF. Cependant, lorsque je remplace mon RichTextBox personnalisé par le format standard, le formatage est toujours perdu. Y a-t-il quelque chose d'autre qui pourrait nuire au bon rendu de Rtf? –
@WilburOmea C'est intéressant, donc en utilisant le 'richtextbox 'standard, vous ne voyez toujours pas le formatage? Dans mon petit exemple en utilisant votre code sur ma machine il affiche très bien [voir ma capture d'écran ici] (http://pasteboard.co/2AMYgXbg0.png) –