WPF:RichTextBox和KeyDown事件之谜

时间:2015-07-09 10:42:57

标签: wpf menu focus richtextbox

在我解释之前,我将提供代码,因为在这种情况下,这是表达问题的最佳方式。一个简单的WPF窗口,他的基节点包含:

<StackPanel>
    <Menu>
        <TextBox x:Name"A" Width="200" />
    </Menu>

    <TextBlock Margin="0,10,0,0">--richTB--</TextBlock>

    <RichTextBox x:Name"B" />

    <TextBlock Margin="0,10,0,0">--simpleTB--</TextBlock>

    <TextBox x:Name"C" />
</StackPanel>

现在,如果焦点在buttom TextBox(C)中,并且通过鼠标单击我将焦点移动到菜单(A)中的顶部TextBox,然后我点击{{ 1}}键,焦点返回到按钮Enter(C)。 TextBox MenuItem键选择&#34; Enter的此行为并返回焦点。一切都很正常。

但是,如果我关注RichTextBox(B),然后我通过顶部TextBox(A),当我点击返回时,光标将保留在框中。

我做了另一个小测试,我在听PreviewKeyDown&amp;菜单(A)中KeyDown的{​​{1}}个事件。所以:

TextBox

我发现了什么?在焦点首先是<Menu> <TextBox Width="200" KeyDown="TB_KeyDown" PreviewKeyDown="TB_PreviewKeyDown" /> </Menu> (B)然后在菜单(A)中的RichTextBox中的最后一个场景中,没有收听TextBox KeyDown密钥!

0 个答案:

没有答案