SL 4:TextBox没有得到Ctrl-V?

时间:2012-01-12 12:34:18

标签: silverlight-4.0 textbox keydown

我们有一个TextBox控件作为更大的UserControl的一部分 UserControl有一个绑定到KeyDown事件的MVVMLight RelayCommand:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="KeyDown">
        <GalaSoft_MvvmLight_Command:EventToCommand Command="{Binding KeyDownCommand}"  PassEventArgsToCommand="True"/>
    </i:EventTrigger> </i:Interaction.Trigger>

当TextBox具有焦点时,可以看到 Ctrl 键的KeyDown事件,但不能看到 Ctrl + V
我在代码隐藏中添加了TextBox的KeyDown处理程序:

                     KeyDown="textBox_KeyDown"

        private void textBox_KeyDown(object sender, KeyEventArgs e)
    {
        System.Diagnostics.Debug.WriteLine(string.Format("textBox_KeyDown Key: {0}  Modifier: {1}", e.Key, Keyboard.Modifiers));
        e.Handled = false;
    }

类似结果 - 处理了 Ctrl 键的KeyDown事件,但 Ctrl + V 未显示。<登记/> 该消息通过其他处理程序冒泡,但从未标记为已处理 关于为什么TextBox没有得到 Ctrl + V 的任何想法?
感谢您的任何见解。

更新:哦,为了Pete的缘故...我在代码隐藏中添加了一个KeyUp处理程序,并且 Ctrl + V 出现在那里。但是,当另一个控件(例如,包含ScrollViewer)是KeyDown的源时, Ctrl + V 会出现在KeyDown处理程序中。 更新第二个:使用一个新的稀疏项目,我验证了TextBox.KeyDown处理程序不会被调用 Ctrl + V ,而为 Ctrl + V 调用TextBox.KeyUp。是否可以将 Ctrl + V 事件“传递”到另一个TextBox?

0 个答案:

没有答案