如何使用WPF隐藏richtextbox或textbox中的部分文本
本文关键字:文本 textbox 何使用 WPF 隐藏 richtextbox | 更新日期: 2023-09-27 18:23:48
我想在wpf中寻求一种方法,在运行时使用C#隐藏和取消隐藏富文本框或文本框中的某些特定行,同时保持其余行可见。我也不想成为可见线和不可见线之间的可见空间。我有一个主意,选择行,然后将字体大小改为0.01,但这并不是一件很简单的事。提前谢谢。
默认情况下,您只能通过分别更改text或RichText属性的值来隐藏和显示WPF TextBox或RichTextBox中的某些文本。例如,如果您有文本"Mary有一只小羊羔,它的羊毛像雪一样白",并且想要隐藏文本"谁的羊毛像白一样雪",那么您必须解析文本,并使用代码在text或RichText中的正确位置删除或添加"谁的毛像雪一样黑"。
听起来你只是想根据某些条件修改布局。在这种情况下,最好将行拆分为单独的文本框,并在存在某些条件时将这些文本框的可见性设置为"折叠",否则将其设置为"可见"。
如果你正在使用TextBox,你会想要一个外部边框,这将帮助你匹配TextBox的风格,然后你可以将隐藏的文本框的BorderBrush和Background设置为透明,这样它看起来就像一个单独的TextBox。
<Border
BorderThickness="1"
BorderBrush="Black"
Background="White">
<StackPanel>
<TextBox
Text="Mary had a little lamb "
BorderBrush="Transparent"
Background="Transparent" />
<!-- Set the Visisibility Property of this TextBox in code to show or hide it -->
<TextBox
Name="ConditionalTextBoxLine"
Visibility="Visible"
Text="Who's fleece was white as snow"
BorderBrush="Transparent"
Background="Transparent" />
</StackPanel>
</Border>