2011-05-05 48 views
0

時,我有三個文本框:跳選項卡順序()按下Tab鍵(.NET 3.5)

<TextBox Name="textBox1" LostFocus="textBox1_LostFocus" /> 
<TextBox Name="textBox2" /> 
<TextBox Name="textBox3" /> 

與此事件:

private void textBox1_LostFocus(object sender, RoutedEventArgs e) 
{ 
    if (textBox1.Text.Equals("some value")) 
     textBox3.Focus(); 
} 

當我按下TAB鍵重點放在textBox1上,焦點轉到textBox2,與textBox3.Focus()無關。 我怎麼能真正把重點放在textBox3?

回答

1

經過一番測試,我發現你目前正在接錯事件。改變您的XAML代碼的第一行到下面

<TextBox Name="textBox1" LostKeyboardFocus="textBox1_LostKeyboardFocus" /> 

和實施以下方法

private void textBox1_LostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e) { 

    if (textBox1.Text.Equals("some value")) { 
     Keyboard.Focus(textBox3); 
    } 
} 

在窗口焦點被正確地設置爲所需的控制。

+0

它完美的工作!非常感謝。 – Marlos 2011-05-05 19:04:20