You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Catel从5.12.4升级到5.12.15后视图EventToCommand行报运行时错误

报错根因

Catel在5.12.4 ~ 5.12.15版本迭代中调整了EventToCommand的继承体系:旧版本EventToCommand继承自微软原生System.Windows.Interactivity.TriggerAction,可以直接放在i:EventTrigger的集合中;新版本EventToCommand默认改为继承Catel自有触发器基类,所以无法放入微软原生的TriggerActionCollection集合,触发类型不匹配报错。

修复方案

以下两种方案二选一即可:

  • 方案一:替换为Catel原生触发器体系(全平台兼容)
    将XAML中原生的i:Interaction相关标签替换为Catel提供的实现即可,示例代码如下:
<catel:Interaction.Triggers>
    <catel:EventTrigger EventName="你的目标事件名">
        <catel:EventToCommand Command="{Binding 你的命令绑定}" />
    </catel:EventTrigger>
</catel:Interaction.Triggers>

只需确保你的XAML头部已经声明了catel前缀对应的Catel.MVVM命名空间即可,不需要额外安装其他包。

  • 方案二:安装兼容包保留原有写法(仅支持WPF平台)
    如果不想修改现有XAML代码,可直接安装Catel官方提供的兼容包Catel.MVVM.Interactivity,安装完成后原有的i:Interaction.Triggers包裹catel:EventToCommand的写法可正常运行,无需做任何代码调整。

内容的提问来源于stack exchange,提问作者user_pv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 11:45:00