Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Wpf RichTextBox包装问题_C#_Wpf_Richtextbox_Word Wrap - Fatal编程技术网

C# Wpf RichTextBox包装问题

C# Wpf RichTextBox包装问题,c#,wpf,richtextbox,word-wrap,C#,Wpf,Richtextbox,Word Wrap,我在WPF的RichTextBox中遇到了文本包装问题,当我得到如下文本时: TextRange tr = new TextRange(rtb.Document.ContentStart, rtb.Document.ContentEnd); tr.Text没有任何“\r\n”,但在视觉控制中,它看起来应该是这样的(当输入到达RichTextBox边框时,它会进行包装(插入行尾)) 我创建RichTextBox的方式如下: &l

我在
WPF
RichTextBox
中遇到了文本包装问题,当我得到如下文本时:

  TextRange tr = new TextRange(rtb.Document.ContentStart,
                               rtb.Document.ContentEnd);
tr.Text
没有任何“\r\n”,但在视觉控制中,它看起来应该是这样的(当输入到达
RichTextBox
边框时,它会进行包装(插入行尾))

我创建RichTextBox的方式如下:

 <RichTextBox Name="Rtb"  AcceptsReturn="True" AcceptsTab="True"   VerticalAlignment="Stretch" HorizontalAlignment="Stretch"  
    HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" Height="100" Margin="15,125,5,45"  Width="272">
            <FlowDocument  LineHeight="1" IsColumnWidthFlexible="true" >
                <Paragraph LineStackingStrategy="MaxHeight">
                    <Run Text="RichTextBox"/>
                </Paragraph>
            </FlowDocument>
 </RichTextBox>

您必须将RichTextBox放在ScrollViewer中

<ScrollViewer>
   <RichTextBox>
        ...
   </RichTextBox>
</ScrollViewer>

...

换行实际上不会在文本中插入回车/换行符。如果更改文本框的宽度,则文本框的换行点将更改。那么如何检测换行事件?我一直在查找,但尚未找到任何内容。我能想到的唯一一件事是依次为字符串中的每个字符设置插入符号位置,然后获得它对应的文本行。当线路发生变化时,这就是您的新线路。