[英]Jumping tab order using Control.Focus() when pressing Tab key (.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?
經過一些測試,我發現您當前正在捕獲錯誤的事件。 將XAML代碼的第一行更改為以下內容
<TextBox Name="textBox1" LostKeyboardFocus="textBox1_LostKeyboardFocus" />
並實現以下方法
private void textBox1_LostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e) {
if (textBox1.Text.Equals("some value")) {
Keyboard.Focus(textBox3);
}
}
窗口中的焦點已正確設置為所需的控件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.