2010-06-20 8 views
7

मैं एक नई लाइन में रनटाइम पर एक WPF RichTextBox में कुछ टेक्स्ट जोड़ना चाहता हूं। मैं इस का उपयोग कर सकते हैं:रनटाइम पर WPF RichTextBox में एक नई पंक्ति में टेक्स्ट जोड़ना

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

लेकिन वहाँ दो पंक्तियों के बीच एक अंतर की बहुत अधिक है। मैं इसे कैसे ठीक करूं?

+0

BTW, वहाँ (एक नई 'FlowDocument' बनाने का कोई मतलब नहीं है' mcFlowDoc = new FlowDocument(); ') जब आप इसका संदर्भ बदल रहे हैं तो अगली पंक्ति 'mcFlowDoc = richTextBox.Document;' –

उत्तर

3

प्रलेखन के अनुसार, पैराग्राफ स्पेसिंग मार्जिन द्वारा परिभाषित किया गया है, जो जमा नहीं होता है (कोई दोगुना नहीं), इसलिए जूलियन लेबोस्क्वेन का जवाब सही है।

MSDN on FlowDocument Paragraph Spacing

6

पैराग्राफ के बीच अंतर को हटाने के लिए pr.Margin = new Thickness(0.0) आज़माएं।

8

मैन्युअल हर पैराग्राफ के लिए मार्जिन सेट करने के लिए होने से बचने के लिए, आपको RichTextBox के XAML को यह जोड़ सकते हैं:

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

क्या आप एक उदाहरण दे सकते हैं कि आप रिच टेक्स्ट बॉक्स ब्लॉक या दस्तावेज़ के लिए xaml कैसे सेट करते हैं? (मैं बस सी # से रिच टेक्स्ट बॉक्स प्रोग्रामिंग के साथ शुरू कर रहा हूँ) –

संबंधित मुद्दे