Question

J'essaie de reproduire MSWord à l'aide de WPF RichTextBox et de la barre d'outils. L'un des problèmes récents est le suivant:

Dans un document MSWord ...

... avec la famille de polices Times New Roman, 11, Justify, une seule ligne contient 95 caractères ... avec la famille de polices Times New Roman, 11, Justify, Bold, une seule ligne contient 83 caractères

sur les marges Il sera plus recommandé de travailler avec des marges ou de limiter les caractères par ligne? Cause lorsque les entrées utilisateur sont,. ou un autre ASCII dont la taille est plus courte que les autres, le nombre maximal de caractères dans une seule ligne "Modifications". Donc, si utiliser les marges est le plus adéquat - comment le WPF RichTextBox gère-t-il les marges?

Merci!

Était-ce utile?

La solution

Essayer de limiter les caractères par ligne ressemble à un cauchemar pour moi. Vous feriez mieux de vous débarrasser du ControlTemplate par défaut pour RichTextBox afin de ne plus avoir que le texte, puis de définir la Margin de votre RichTextBox pour que le texte "flottant" au milieu:

<Grid xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <ScrollViewer>
        <RichTextBox Margin="30,0">
            <RichTextBox.Template>
                <ControlTemplate TargetType="{x:Type RichTextBox}">
                    <Border x:Name="PART_ContentHost" Margin="2" Background="Transparent" BorderBrush="Transparent"/>
                </ControlTemplate>
            </RichTextBox.Template>
        </RichTextBox>
    </ScrollViewer>
</Grid>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top