2010-06-20 17 views
7

Ich möchte etwas Text in einer WPF RichTextBox zur Laufzeit in einer neuen Zeile hinzufügen. Ich kann dies tun mit:Hinzufügen von Text in einer neuen Zeile in WPF RichTextBox zur Laufzeit

FlowDocument mcFlowDoc = new FlowDocument(); 
mcFlowDoc = richTextBox.Document; 
Paragraph pr = new Paragraph(); 
pr.Inlines.Add(status); 
mcFlowDoc.Blocks.Add(pr); 
StatusText.Document = mcFlowDoc; 

Aber es ist zu viel von einer Lücke zwischen zwei Linien. Wie kann ich das beheben?

+0

BTW, es hat keinen Sinn, einen neuen 'FlowDocument' Schaffung (' mcFlowDoc = new FlowDocument(); ') Wenn Sie den Verweis ändern, wird die nächste Zeile' mcFlowDoc = richTextBox.Document; ' –

Antwort

6

Versuchen Sie pr.Margin = new Thickness(0.0), um die Lücken zwischen Absätzen zu entfernen.

8

den Spielraum für jeden Absatz manuell einstellen Um zu vermeiden, zu, können Sie dies auf die XAML des RichTextBox hinzufügen:

<RichTextBox> 
    <RichTextBox.Resources> 
    <Style TargetType="{x:Type Paragraph}"> 
     <Setter Property="Margin" Value="0"/> 
    </Style> 
    </RichTextBox.Resources> 
</RichTextBox> 
+0

können Sie ein Beispiel geben, wie Sie xaml für einen Rich Text Box-Block oder ein Rich-Dokument einrichten? (Ich beginne gerade mit Rich Text Box Programmierung von C#) –

Verwandte Themen