在TabItem控件上有一个TextBox项(MyTextBox)。我的代码如下所示:
MyTextBox.Focus();
Keyboard.Focus(MyTextBox);
当我通过调试器运行此代码时,执行这些行后会看到以下内容:
MyTextBox.IsFocused = true
MyTextBox.IsKeyboardFocused = false
谁能告诉我为什么文本框没有得到键盘焦点?只是启用了一个标准的TextBox控件。
最佳答案
MyTextBox.IsKeyboardFocused
是错误的,因为您正在调试器下查看它,并且键盘焦点可能在Visual Studio中...尝试在没有断点(例如Debug.Write
或跟踪制动点)的情况下调试焦点,以查看运行时MyTextBox.IsKeyboardFocused
的实际值。
还要注意,Focus()
方法返回布尔值,该值指示是否成功设置了焦点。在您的情况下,它是否返回False
?如果是,我建议使用stepping into Focus()
方法来找出错误所在。