我有以下有效的命令:
private ICommand _AddNewCommand;
public ICommand AddNewCommand
{
get
{
if (_AddNewCommand == null)
{
_AddNewCommand = new RelayCommand(async () =>
{
await AddNewAsync();
}, AddNewCommand_CanExecute);
}
return _AddNewCommand;
}
}
根据AddNewCommand_CanExecute
方法的结果正确启用/禁用了绑定到此按钮的按钮。
但是,如果我想将某些参数传递给我的AddNewAsync()
方法,我会这样做:
_AddNewCommand = new RelayCommand<object>(async obj =>
{
await AddNewAsync(obj);
}, AddNewCommand_CanExecute());
注意,AddNewCommand_CanExecute
必须更改为AddNewCommand_CanExecute()
。
但是,当我这样做时,即使AddNewCommand_CanExecute()
应该返回false(鉴于两者之间没有变化,绑定按钮也总是启用的。)>
这是怎么回事?
我有以下有效的命令:private ICommand _AddNewCommand;公共ICommand AddNewCommand {获取{如果(_AddNewCommand == null){_AddNewCommand = new ...
我认为此会议视频可以帮助您Common Async/Await Mistakes