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

.NET Maui按钮点击事件处理报错:无法转换EventArgs为ClickedEventArgs

问题原因及解决方法

核心问题

.NET Maui中Button的Clicked事件参数是EventArgs类型,不存在ClickedEventArgs这个类型(该类型是旧Xamarin.Forms的API,Maui已移除),所以强行将EventArgs转换为ClickedEventArgs会抛出类型转换异常。

正确获取CommandParameter的方式

直接从触发事件的Button实例本身获取参数,代码示例:

private void ButtonClicked_EventHandler(object sender, EventArgs e)
{
    // 先判断sender是否为Button实例
    if (sender is Button targetBtn)
    {
        // 直接从Button的CommandParameter属性取绑定的值
        var identifier = targetBtn.CommandParameter;
        // 这里添加你的业务逻辑
    }
}

额外提示

如果你的项目遵循MVVM模式,建议优先使用Command绑定代替Clicked事件处理,这样更符合MVVM的设计规范,也能避免这类事件参数的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 05:10:51