我怎么说,检测列表框中的特定文本并将其替换为特定文本。 例如:
private void timer1_Tick(object sender, EventArgs e)
{
if(listBox1.Text.Contains("Hi"))
{
// replace with Hello
}
}
答案 0 :(得分:4)
在if(listBox1.Items.Cast<string>().Contains("Hi")){ //check if the Items has "Hi" string, case each item to string
int a = listBox1.Items.IndexOf("Hi"); //get the index of "Hi"
listBox1.Items.RemoveAt(a); //remove the element
listBox1.Items.Insert(a, "Hello"); //re-insert the replacement element
}
中,您可以这样做:
{{1}}
答案 1 :(得分:2)
在WinForm ListBox中,Text属性包含当前所选项目的文本 (我假设你有所有的字符串项目)
如果您需要查找项目的文本并使用不同的内容进行更改,则只需在Items集合中找到项目的索引,然后直接将实际文本替换为新文本。
int pos = listBox1.Items.IndexOf("Hi");
if(pos != -1) listBox1.Items[pos] = "Hello";
另请注意,如果字符串不存在,IndexOf将返回-1,因此无需添加其他检查以查找字符串是否在列表中