2017-07-26 85 views
0

我試圖建立一個程序,以顯示消息「PASS」(在TextBox2中內),當兩個條件發生:顯示文本時,在確定消息點擊

1)當textBox1的接收到包含文本「1」第一個字符串中

2)當「ENTER」鍵被按下發送包含在(該文本的文本將被髮送到SQL數據庫)

這是非常困難給我開發一個if函數來插入這兩個條件秒。任何幫助將不勝感激,非常感謝。

下面是一段代碼從來就都試圖:

private void textBox2_TextChanged(object sender, EventArgs e) 
{ 

     string input = textBox2.Text; 
     string strName = "PASS"; 


     if (input.StartsWith("G") && (Control.ModifierKeys & Keys.Enter) != 0) 

     { 
      textBox5.Text = strName; 
      //CHANGE_COLOR = green 
     } 
} 
+1

你可以附上你試過到目前爲止的代碼? –

+0

謝謝,親愛的艾莉亞。我會在我的代碼下面發帖。 –

回答

0

1條件:您可以使用KeyPressEventArgs,以確定被按下哪個鍵。

第二個條件:您可以選擇實施一個單獨的功能,將檢查是否存在textBox1的的第一個字符串中「1」的字符。

目標:如果出現這兩種情況下,TextBox2中的文字是: 「PASS」。

我提供了以下解決方案:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     char _enter = (char)13; 
     if (e.KeyChar == _enter && isFirstStringContaining1()) 
      textBox2.Text = "PASS"; 
     else 
      textBox2.Text = ""; 
    } 

    private bool isFirstStringContaining1() 
    { 
     int length = textBox1.Text.IndexOf(' '); 
     if (length == -1) 
      length = textBox1.Text.Length; 
     string first_str = textBox1.Text.Substring(0, length); 
     foreach (char c in first_str) 
      if (c.Equals('1')) 
       return true; 
     return false; 
    } 
+0

嗨親愛的拉茲,我試過你的代碼,但它沒有奏效。 –

+0

你沒有給我詳細資料來幫助你..它有什麼不起作用?它完美的工作,我只是跑它。你只是複製粘貼它?如果是,則不應該有..您應該在屬性 - >事件中爲每個控件指定相關事件。 (雷霆圖標),那麼你應該寫出將由事件觸發的函數名稱。您還應該將代碼調整爲您自己的「控件名稱」(例如,我已經看到,在您的情況下,它不是textBox1和textBox2,而是textBox2和textBox5 .. –

相關問題