现在我有了这个
txtRTB.Text = txtRTB.Text & vbNewLine & "Text2"
如果txtRTB.Text中存在该行,有没有办法可以在“Text1”之前添加此行?
例如,让我们说现在txtRTB.Text说:
文本1
我想要我的按钮,或其他什么,在它之前添加“Text2”就像这样:
文本2
文本1
否则,只需将它添加到下一行,如下所示:
随机文字
文本2
[编辑]
所以,假设我在我的富文本框中有这个:
苹果
香蕉
梨
如果我在没有“s”的情况下搜索“Banana”并找到“Bananas”,我想在它之前添加“Strawberry”这样的行:
苹果
草莓
香蕉
梨
否则,如果找不到“Banana”(如果“Bananas”不在列表中,那么我想将它添加到文本框的顶部,如下所示:
草莓
苹果
梨
答案 0 :(得分:1)
您是否正在尝试查找或查看字符串是否包含在另一个字符串中?
如果是,请尝试以下方法: -
String valueTxtRTB = txtRTB.Text
if (valueTxtRTB.Contains("Text1"))
{
// Do Something //
}
答案 1 :(得分:1)
您必须获取搜索文本的行号才能插入它:
Dim index As Integer = txtRTB.Find("Text1")
If index > -1 Then
index = txtRTB.GetLineFromCharIndex(index)
index = txtRTB.GetFirstCharIndexFromLine(index)
txtRTB.Select(index, 0)
txtRTB.SelectedText = "Text2" & vbNewLine
Else
txtRTB.AppendText("Text2" & vbNewLine)
End If
此外,在添加文本时,请使用AppendText:
'txtRTB.Text = txtRTB.Text & vbNewLine & "Text2"
txtRTB.AppendText(vbNewLine & "Text2")