我想隐藏vb.net中richtextbox中的部分文本。 即
Richtextbox1.text ="Test1 test2 test3"
现在我想从richtextbox文本隐藏“test2”,它应该只在richtextbox控件上显示“Test1 test3”文本。
所以有人帮助我并告诉我该怎么做?
先谢谢。
答案 0 :(得分:0)
“是的,它是静态值”
这似乎是一个微不足道的答案......
RichTextBox1.Text = RichTextBox1.Text.Replace("test2", "")
*假设静态值不是另一个字符串的一部分。
答案 1 :(得分:0)
RichTextBox控件确实支持Visible rtf代码,因此可以使用:
string hideText = "test2 ";
if (richTextBox1.Find(hideText) > -1) {
richTextBox1.SelectedRtf = @"{\rtf1\ansi\v " + hideText + @"\v0}";
MessageBox.Show(richTextBox1.Text);
}
请注意,显示的信息仍会显示“test2”。
根据您的评论,这是一种通过向后迭代隐藏单词的所有实例的方法:
string hideText = "[test2]";
int index = richTextBox1.TextLength;
while (index > -1) {
index = richTextBox1.Text.LastIndexOf(hideText, index);
if (index > -1) {
richTextBox1.Select(index, hideText.Length);
richTextBox1.SelectedRtf = @"{\rtf1\ansi\v " + hideText + @"\v0}";
}
}