2011-02-27 91 views
0
string[] lines = { textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text, textBox5.Text, textBox6.Text }; 
Random RandString = new Random(); 
string text = lines[RandString.Next(0, lines.Length)]; 
SendKeys.SendWait(text); 

如何選擇文本框內的文本?我試圖將數據string[] lines分類到新的string[] hasText,但我不確定如何去檢查文本框是否包含文本。只輸入非空字段?

如果textBox字段爲空,它仍然會通過RandString進行處理,並且SendKeys會嘗試輸出它。我怎樣才能解決這個問題?

謝謝。

回答

2

您可以在陣列LINQ過濾:

string[] hasText = lines.Where(s => !String.IsNullOrEmpty(s)).ToArray(); 
+0

非常感謝LINQ岩石。 =) – Kyle 2011-02-27 11:25:25

0

使用IsNullOrEmpty(here

TextBox[] textboxes = { textBox1, textBox2, textBox3, textBox4, textBox5, textBox6}; 

List<string> lines = new List<string>(); 

foreach(Textbox tb in textboxes) 
{ 
    if (!tb.text.IsNullOrEmpty() 
    { 
     lines.Add(tb); 
    } 
} 

Random RandString = new Random(); 
string text = lines[RandString.Next(0, lines.Length)]; 
SendKeys.SendWait(text); 

注:我沒有編譯它