如何更改RichTextBox段落间距?

时间:2008-11-28 04:54:41

标签: wpf richtextbox

我在WPF中使用RichTextBox,并且我尝试将默认段落间距设置为0(这样就没有段落间距)。虽然我可以在XAML中执行此操作,但我希望尽可能以编程方式实现它。有什么想法吗?

7 个答案:

答案 0 :(得分:182)

我做了风格(双关语)

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

答案 1 :(得分:24)

使用线高

RichTextBox rtb = new RichTextBox();    
Paragraph p = rtb.Document.Blocks.FirstBlock as Paragraph;    
p.LineHeight = 10;

答案 2 :(得分:17)

关闭,所以你得到了积分。实际上结果是设定了保证金,

p.Margin = new Thickness(0);

答案 3 :(得分:2)

RichTextBox rtb = new RichTextBox();
rtb.SetValue(Paragraph.LineHeightProperty, 1.0);

答案 4 :(得分:1)

在C#2008 WAP

richtextbox1.SelectionCharOffset =
    -1 * ( Convert.ToInt32(R223.Txt_Space_Before.Text) * 100);

richtextbox1.SelectionCharOffset =
    Convert.ToInt32(R223.Txt_Space_Before.Text) * 100;

可用于行间距。

这是行距高度的唯一方法。

答案 5 :(得分:0)

<RichTextBox  Height="250" Width="500" VerticalScrollBarVisibility="Auto" TextWrapping="Wrap" IsReadOnly="True" >
    <Paragraph>
        XYZ
        <LineBreak />
    </Paragraph>
</RichTextBox>

答案 6 :(得分:0)

我知道甚至在开始编码之前就已经发布了这个问题,但是我发现只需将ShowSelectedMargin设置为true即可达到目的