1

Je développe une application UWP dans laquelle j'utilise un contrôle RichEditBox. J'essaie de changer l'espacement des lignes (espace entre deux lignes) dans mon code. J'ai essayé tous les LineSpacingRule, mais ce n'est pas reflété dans mon interface utilisateur. Voici mon codeLa modification de l'espacement des lignes Richeditbox ne se produit pas

RichEditBox richedit = new RichEditBox(); 
     richedit.FontSize = 14; 
     richedit.Style = Application.Current.Resources["RichEditBoxStyleForTextNote"] as Style; 

     richedit.Background = new SolidColorBrush(Colors.Transparent); 

     string rtf = HelperFunctions.ConvertHtmlToRtf(html); //HelperFunctions.HTMLtoRTF(html); 
     richedit.Document.SetText(TextSetOptions.FormatRtf, rtf); 

     richedit.IsReadOnly = true; 
     richedit.Document.GetDefaultParagraphFormat().SetLineSpacing(LineSpacingRule.OneAndHalf, 0f); 

J'ai essayé tous les types de LineSpacingRule, mais n'a pas pu voir une augmentation de l'espace de ligne. Est-ce que quelqu'un peut m'aider à augmenter l'interligne?

Merci, Noorul.

Répondre

0

Le problème ici est que vous modifiez le LineSpacing du contrôle, mais le contrôle affiche un document qui contient ses propres informations de style et d'affichage pour ce qui est affiché. La méthode la plus simple pour définir le LineSpacing consiste à obtenir le formatage actuel, puis à ajuster l'interligne comme souhaité.
Comme ceci:

var format = richedit.Document.GetDefaultParagraphFormat(); 
format.SetLineSpacing(LineSpacingRule.AtLeast, 20); 
richedit.Document.SetDefaultParagraphFormat(format); 
+0

Merci Matt, ça marche ... – Noorul