如何在Caliburn.Micro WPF中绑定删除到动作?

问题描述 投票:1回答:1

我目前正在尝试将 "删除 "键绑定到一个 "动作 "上。Action 删除数据网格行时。

设置一个 KeyBinding 似乎并不奏效。

<DataGrid.InputBindings>
    <KeyBinding Key="Delete"
                cal:Message.Attach="[Key Delete] = [Action DeletePartNumberRow()]"/>
</DataGrid.InputBindings>

设置为... DataGrid,也不行。

<DataGrid x:Name="PartNumbers"
          CanUserAddRows="True"
          CanUserDeleteRows="True"
          cal:Message.Attach="[Gesture Delete] = [Action DeletePartNumberRow()]">
...
</DataGrid>

我想知道是否有其他的方法来实现这个目标 或者我是否用错了方法?

最终我希望能够在应用程序中创建自定义键绑定。是否有其他方法可以实现这个目标?

wpf data-binding caliburn.micro
1个回答
1
投票

你可以通过派生System.Windows.Interactivity.TriggerBase来实现。

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"

<i:Interaction.Triggers>
    <common:InputBindingTrigger>
        <common:InputBindingTrigger.InputBinding>
            <KeyBinding Key="Delete"/>
        </common:InputBindingTrigger.InputBinding>
        <cal:ActionMessage MethodName="DoTheMagic"/>
    </common:InputBindingTrigger>
</i:Interaction.Triggers>

在网上有很多例子,例如 这里

© www.soinside.com 2019 - 2024. All rights reserved.