Je dois appliquer le formatage de paragraphe à une sélection dans une zone de texte enrichi. Mon RTB se comportera de la même manière que les zones de texte riches sur StackOverflow - l'utilisateur peut taper du texte dans le RTB, mais il peut également entrer des blocs de code. Le RTB appliquera un formatage très simple au bloc de code - il changera la police et appliquera une couleur d'arrière-plan au bloc entier, similaire à ce que vous voyez dans le bloc de code ci-dessous.Mise en forme de paragraphe dans un RichTextBox WPF?
Modification de la police est assez simple:
var textRange = new TextRange(rtb.Selection.Start, rtb.Selection.End);
textRange.ApplyPropertyValue(TextElement.FontFamilyProperty, "Consolas");
textRange.ApplyPropertyValue(TextElement.FontSizeProperty, 10D);
Maintenant je dois appliquer une mise en forme au niveau du paragraphe. J'ai besoin de mettre la marge de paragraphe à 0, ainsi je n'obtiens pas une ligne vide entre les lignes de code, et je dois placer la couleur de fond de paragraphe. Voici mon problème: je ne peux pas comprendre comment obtenir les éléments de paragraphe de la sélection, de sorte que je puisse appliquer la mise en forme.
Des suggestions? Un exemple d'application des propriétés Marge et Arrière-plan serait extrêmement utile. Merci!
J'ai essayé de définir la propriété Background des objets Block et Section de sélection selon ce qui précède. Même résultat que la définition de l'arrière-plan du paragraphe –
Avez-vous trouvé une solution pour appliquer l'arrière-plan à l'ensemble de la ligne? J'ai aussi besoin de cette fonctionnalité. – Alireza