WPF ToolkitMVVM RelayCommand

ObservableProperty 特性

字段是一般小写

csharp 复制代码
[ObservableProperty]
private string?userName;

//View  中  绑定  是  大写  UserName

RelayCommand 特性

要大写

csharp 复制代码
 [RelayCommand]
 private void GetName()
 {

 }
//View  中绑定  GetNameCommand         方法+Command

》》》CanExecute

csharp 复制代码
//  会首先执行 GetMethod方法,
//  若返回 False,则View绑定的GetName的控件{如按钮  会 禁止使用}
//  若返回True,则View绑定的GetName的控件  可用。  
// 触发这个控件,会再次执行 GetMethod方法,若返回False,则不执行,反之继续执行对应的GetName  方法体
// IRelayCommand.NotifyCanExecuteChanged 调用命令时再次调用该按钮。

 [RelayCommand(CanExecute =nameof(GetMethod))]
 private void GetName()
 {

 }
 private bool GetMethod()
 {
     //return user is not null;
     return false;
 }

异步命令

方法需要 async Task 修饰

csharp 复制代码
[RelayCommand]
private async Task GreetUserAsync()
{
    。。。。
    await 。。。。
    。。。。。
}
csharp 复制代码
[RelayCommand]
private async Task GreetUserAsync(CancellationToken token)
{
    带取消命令
}
相关推荐
VimorphTech几秒前
一段字幕太长,怎样拆句并安排显示时间?
java·spring boot
万联WANFLOW1 分钟前
Kimi K3.1 Pro 接口接入指南:模型选型、费用计算与零数据保留
java·spring boot·python·安全·spring·大模型
织码weavecodes14 分钟前
新闻资讯模块设计:内容发布、阅读计数与附件鉴权
java·服务器·数据库
学到老活到老19 分钟前
Spring 事务怎样生效?为什么加了 @Transactional 仍不回滚?
java·spring
学到老活到老20 分钟前
Spring 怎样创建 Bean?@Autowired 在哪一步生效?
java·spring
用户1129361121921 分钟前
我扫了项目里 739 个 Controller,发现最危险的越权漏洞不是没认证
java
小羊没烦恼!24 分钟前
分布式事务 | 使用DTM 的Saga 模式
java·linux·运维·数据库·wpf
JPower_mr.g37 分钟前
SmartCall v1.0.9 发布:智能体知识库上线,让 AI 客服先查资料再回答
java·ide·人工智能·macos·架构·开源·xcode
SL_staff1 小时前
破除执行黑箱:用目标地图、资源热力图与健康度看板构建可下钻的执行事实链
java·开源·全栈
骑着蜗牛撵大象3271 小时前
让 Codex 值夜班:把告警排查与巡检接成可回滚的自动化链路
android·java·运维·ai·自动化·codex·智能体