2010-09-02 192 views
1

我有幾個文本框。我想每次點擊用戶到下一個文本框,按回車。 文本框的Tabindex設置正確。C#tabindex - 泛化(桌面應用程序)

我有一樣的東西:

private void textBox_Description_KeyPress(object sender, KeyPressEventArgs e) 
    { 
     if (e.KeyChar == (char)Keys.Enter) 
     { 
      e.Handled = true; 
      setFocusOnNextElement(sender); 
     } 
    } 

應該如何setFocusOnNextElement是什麼樣子?如果我想使它一般。我可以解析每個控件,並找出下一步,但我有一種感覺,這可以做得更好。

回答

5

我不會建議像構建函數那樣構建函數,因爲它需要參數爲object

private static void SetFocusOnNextElement(Control control) 
{ 
    Control target = Control.GetNextControl(control, true); 

    if (target != null) target.Focus(); 
} 

然後調用它是這樣的:

SetFocusOnNextElement((Control)sender);