簡體   English   中英

如何使用WPF隱藏RichTextBox或TextBox中的部分文本?

[英]How to hide part of text in a richtextbox or textbox using WPF?

我想問一種在運行時使用C#在Richtextbox或textbox中隱藏和取消隱藏某些特定行的wpf方式,同時讓其余行可見。 我也不想在可見線和不可見線之間成為可見空間。 我有一個選擇線的想法,然后將字體大小更改為0.01,但這不是很多建議。 提前致謝。

默認情況下,只能分別通過更改Text或RichText屬性的值來隱藏和顯示WPF TextBox或RichTextBox中的某些文本。 例如,如果您有文本“瑪麗有一只小羊羔,其羊毛像雪一樣潔白”,並且想要隱藏文本“誰的羊毛像雪一樣潔白”,您將不得不解析文本並刪除或添加“誰的羊毛像雪一樣”。使用代碼在“文本”或“ RichText”中的正確位置顯示“白色如雪”。

聽起來您只是在嘗試根據某些條件修改布局。 在這種情況下,最好將行拆分為單獨的文本框,並在存在某些條件時將這些文本框的可見性設置為“折疊”,否則將其設置為“可見”。

如果您使用的是TextBox,則需要一個外部Border來幫助您匹配TextBox的樣式,然后您可以將要隱藏的文本框的BorderBrush和Background設置為Transparent,這樣看起來就像一個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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM