2016-03-26 4 views
-1

Liste kutusunda belirli bir metni algılayıp belirli bir metinle değiştirmeyi nasıl söylerdim? Ör: WinForms yılındaC# - Metni ListBox'ta Değiştir

 private void timer1_Tick(object sender, EventArgs e) 
    { 
     if(listBox1.Text.Contains("Hi")) 
     { 
      // replace with Hello 
     } 
    } 
+0

Eğer Win liste kutusu bahsediyorsun değilse

int pos = listBox1.Items.IndexOf("Hi"); if(pos != -1) listBox1.Items[pos] = "Hello"; 

Not ayrıca IndexOf döndürür -1, böylece başka bir çek eklemeye gerek bulmak için? – Steve

cevap

3

, bunu şöyle yapabilirsiniz: bir WinForm ListBox olarak

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 
} 
0

, metin özelliği seçili öğenin metnini içerir.
bir öğenin metnini bulup Öğeler koleksiyonu öğenin dizinini bulup daha sonra doğrudan fiili yerine sadece ihtiyaç farklı bir şey ile değiştirmek gerekiyorsa

(Hepinizin dize öğeleri olduğunu varsayalım) yeni olanla metin. dize yoksa dize listesinde veya