RichTextBoxの段落間隔を変更するにはどうすればよいですか?
-
11-07-2019 - |
質問
WPFでRichTextBoxを使用していますが、デフォルトの段落間隔を0に設定しようとしています(段落間隔がないように)。 XAMLでこれを行うことはできますが、可能であればプログラムで実現したいと思います。アイデアはありますか?
解決
スタイルを使用して(くぼんだ字下げ)
<RichTextBox Margin="0,51,0,0" Name="mainTextBox" >
<RichTextBox.Resources>
<Style TargetType="{x:Type Paragraph}">
<Setter Property="Margin" Value="0"/>
</Style>
</RichTextBox.Resources>
</RichTextBox>
他のヒント
行の高さの使用
RichTextBox rtb = new RichTextBox();
Paragraph p = rtb.Document.Blocks.FirstBlock as Paragraph;
p.LineHeight = 10;
閉じて、ポイントを獲得しました。実際には、マージンを設定していることが判明しました。
p.Margin = new Thickness(0);
VSPFでWPFを使用している場合、これは次のように動作します。
<RichTextBox HorizontalAlignment="Left" Height="126" Margin="10,280,0,0" VerticalAlignment="Top" Width="343" FontSize="14" Block.LineHeight="2"/>
キーは Block.LineHeight =&quot; 2&quot;です
これはプロパティビューでも見つけることができますが、そこから6px以下に変更することはできません。
RichTextBox rtb = new RichTextBox();
rtb.SetValue(Paragraph.LineHeightProperty, 1.0);
C#2008 WAPで
richtextbox1.SelectionCharOffset =
-1 * ( Convert.ToInt32(R223.Txt_Space_Before.Text) * 100);
または
richtextbox1.SelectionCharOffset =
Convert.ToInt32(R223.Txt_Space_Before.Text) * 100;
行間隔に使用できます。
これは、行の高さの間隔を設定できる唯一の方法です。
<RichTextBox Height="250" Width="500" VerticalScrollBarVisibility="Auto" TextWrapping="Wrap" IsReadOnly="True" >
<Paragraph>
XYZ
<LineBreak />
</Paragraph>
</RichTextBox>
所属していません StackOverflow