【问题标题】:how to bind input key to itemscontrol in wpf如何将输入键绑定到wpf中的itemscontrol
【发布时间】:2012-08-11 20:15:05
【问题描述】:

我有一个项目控件,它在画布上有项目,当我按下删除时,我想从画布中删除一个项目:

<ItemsControl.InputBindings>
    <KeyBinding Command="{Binding DeleteItemCommand}" Key="Delete"/>
</ItemsControl.InputBindings>

但是,DeleteItemCommand 中的方法永远不会被调用。

我怎样才能做到这一点?

【问题讨论】:

  • 其他命令是否按照您的设置工作?有几种不同的命令绑定约定,只是想知道您是否可以完成代码示例,展示如何设置命令以及 XAML 是否共享可以看到该命令绑定的 DataContext。

标签: wpf xaml itemscontrol key-bindings inputbinding


【解决方案1】:

ItemsControl(或可能在其中的某些内容)需要为 Focusable 才能接收键盘输入。

【讨论】:

  • 在我的 ItemsControl 项目上设置 Focusable="True" 使它们能够在聚焦时被删除,谢谢,但是聚焦它们的唯一方法是对它们进行标记,或者通过一些技巧 -在画布项目上的 Mouse_Down 捕获上找到堆栈面板。有没有办法在将项目添加到画布时聚焦它们? (通过在画布上单击鼠标将对象添加到 ItemSource 集合中)
  • 你用这个答案救了我!
猜你喜欢
  • 1970-01-01
  • 2010-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-23
  • 2016-06-04
相关资源
最近更新 更多