2016-04-13 156 views
0

即時通訊使用文本框接受條形碼輸入,然後回車鍵做輸入的東西。但是它爲每個輸入的號碼發送一次輸入密鑰。有沒有辦法讓回車鍵只發送一次?或者也許抑制其他進入?文本框發送輸入密鑰輸入每個數字

private void txtBscanned_KeyDown(object sender, KeyEventArgs e) 
    { 
     this.txtBscanned.KeyDown += new System.Windows.Forms.KeyEventHandler(this.OnKeyDownHandler); 
    } 
    private void OnKeyDownHandler(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode == Keys.Enter) 
     { 

       MessageBox.Show(txtBscanned.Text); 
     } 
    } 
+0

什麼會觸發你正在談論的「一次」? –

+0

我把13個數字,然後輸入結束。但是這個消息框會出現13次。 – SarahJ

回答

0

你爲什麼在文本框本身分配一個keydown事件?您應該在構造函數或使用設計器上分配事件。

public Form1() 
    { 
     InitializeComponent(); 
     txtBscanned.KeyDown += new KeyEventHandler(this.OnKeyDownHandler); 
     } 
+0

謝謝修復它。 – SarahJ

+0

如果它解決了您的問題,請將其標記爲答案 –