当我将4兆字节的文本加载到TextBox中时,只有前11300行 显示。其余的都是空白的。但即使它是空白的 我仍然可以滚动它并可以选择文本。 当我将其粘贴到别处时,会出现文本。 只是文本没有显示过去的11300行。 有没有办法解决这个问题?
以下是我在xaml中声明它的方式:
<RichEditBox
x:Name="ContentBox"
x:FieldModifier="public"
Grid.Row="0"
KeyDown="Tb_KeyDown"
GotFocus="Content_gotfocus"
Loaded="Content_gotfocus"
AcceptsReturn="True"
TextWrapping="NoWrap"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
IsSpellCheckEnabled="False"
IsTextPredictionEnabled="False"
TextReadingOrder="UseFlowDirection"
FlowDirection="LeftToRight"
TextAlignment="Left"
>
</RichEditBox>
OR
<TextBox
x:Name="ContentBox"
x:FieldModifier="public"
Grid.Row="0"
AcceptsReturn="True"
KeyDown="Tb_KeyDown"
GotFocus="Content_gotfocus"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
ScrollViewer.HorizontalScrollMode="Enabled"
ScrollViewer.VerticalScrollMode="Enabled"
ScrollViewer.BringIntoViewOnFocusChange="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto"
TextWrapping="NoWrap"
IsSpellCheckEnabled="False"
IsTextPredictionEnabled="False"
Loaded="Content_gotfocus"
TextReadingOrder="UseFlowDirection"
FlowDirection="LeftToRight"
TextAlignment="Left" LayoutUpdated="content_box_updated"
/>
答案 0 :(得分:1)
我已经测试了您的代码并重现了您的问题。问题的原因是RichEditBox
和TextBox
都会使用ScrollViewer
控件来滚动内容。但是可以在scrollview
中使用最大内容的限制。它是为了保持控制性能而设计的。
如果要显示其余内容。您可以根据最大行号截取剩余内容,并在另一个RichEditBox/TextBox
中显示剩余内容。