2009-03-03 596 views
0

我正在WPF中编写一个控件,该控件在窗体上绘制一个形状,然后绘制该形状的尺寸。这些尺寸是可编辑的,因此它们显示在文本框中。当用户更改文本框中的尺寸时,形状会更新。在WPF文本框中设置焦点

当显示尺寸的文本框失去焦点时,即文本框失去焦点时,我正在更新形状并重绘形状和所有尺寸。文本框以两种方式之一失去焦点 - 无论是用户按Tab键还是用户单击文本框外的其他控件时。

我的问题是,当用户按下tab键或在文本框外单击其他位置时,整个控件都会重绘,并且焦点未设置为应该在的下一个控件。这真的很烦人,因为制表符完全停止工作,并使用鼠标设置焦点,用户必须点击两次。有没有解决的办法?

我控制的图像显示在下面

alt text http://img223.imageshack.us/img223/9496/cavity.png

+0

您可以稍微更改功能,例如当用户输入任何文本框时,您可以更改维度,即OnTextChanged事件,因此用户无需执行一些额外的点击即可更新维度。您可以使用Tab键在文本框之间移动。 – 2013-10-22 07:19:38

回答

1

看来你要管理在此窗口中要做到这一点,我想你会订阅GotKeyboardFocus Tab顺序自己和LostKeyboardFocus事件在这些编辑字段上,然后将焦点驱动到适当的位置,如果您不满意焦点已经消失。