一直用老版本 Avalonia ,最近才开始给新项目上 11 。Avalonia 这个框架向下兼容做的挺差的,特别是开始支持移动端后 breaking changes 超级多,也算可以理解。然后发现"{Binding $parent[ItemsControl].DataContext.ParentCommand}" 这种写法不能用了,会报错 Unable to resolve property or method of name 'ParentCommand' on type 'System.Object'。GPT-4 和 Claude 都完全不懂这个变化,一直指导我排查别的东西,折腾了好久也没解决。只好去 Discord 上问群友,群友说是 11 新加的 CompileBindings 导致的,默认开启,必须把 CompileBindings 关掉,或者每次调用 Parent Command 都写 Command="{Binding $parent[ItemsControl].((vm:ParentViewModel)DataContext).ParentCommand}" 这么长一大坨。本来写 $parent[ItemsControl].DataContext.ParentCommand 就已经很长很难看,现在还要再加一段。为什么就不解决一下呢?
举报· 126 次点击
登录 注册 站外分享
快来抢沙发
0 条回复  
返回顶部