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

MAUI中EditViewModel的OnFilenameChanged方法未触发求助

问题:QueryProperty绑定后EditViewModel的OnFilenameChanged未触发

我在DetailsViewModel中使用以下代码,通过QueryProperty绑定Filename属性,OnFilenameChanged方法可正常触发并调用ReadFile(),解决了构造函数中Filename为null的问题:

[QueryProperty("Filename", "Filename_")]
public partial class DetailsViewModel : ObservableObject
{
     [ObservableProperty]
     string filename;

     partial void OnFilenameChanged(string value)
     {
         ReadFile();
     }

     [Relay Command]
     async Task Edit(string s)
     {
         // filename passed as s
         await Shell.Current.GoToAsync($"Edit?Filename_{s}");
     }
}

但将相同逻辑应用到EditViewModel时,OnFilenameChanged方法完全未执行。我曾怀疑是ReadFile()的问题,但断点显示该方法从未被调用,说明OnFilenameChanged根本没触发。我调试确认传递给Edit命令的参数s是正确的文件名。

[QueryProperty("Filename", "Filename_")]
public partial class EditViewModel : ObservableObject
{
     [ObservableProperty]
     string filename;

     partial void OnFilenameChanged(string value)
     {
         ReadFile();
     }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 22:42:07