无法在同一控件上使用KeyUp和KeyBinding

时间:2015-11-09 13:48:18

标签: wpf xaml events

我遇到了一些不寻常的行为,我想使用KeyBindingEnter键绑定到我的视图模型中的命令,但我也想在视图的代码隐藏中订阅控件上的KeyUp事件。这是一个例子:

<TextBox Name="txtCustomBarcode"
         KeyUp="CustomBarcode_KeyUp">
        <TextBox.InputBindings>
            <KeyBinding Command="{Binding ScanBarcodeCommand}"
                        CommandParameter="{Binding Text, ElementName=txtCustomBarcode}" 
                        Key="Enter"/>
        </TextBox.InputBindings>
    </TextBox>

如果我使用此方法,则仅执行命令,将忽略代码隐藏事件。如果我删除KeyBinding,则KeyUp事件会按预期调用。

我可以在同一个控件上使用KeyBinding 一个KeyUp事件吗?

1 个答案:

答案 0 :(得分:0)

我不相信这是可能的,因为控件需要有两个不同的数据上下文,据我所知,这是不可能的。

编辑:实际上在进一步阅读时,您可能会做这样的事情: Multiple dataContext for one control - MVVM