如果我们几乎总是使用 DelegateCommand,WPF 命令有什么用?

What are WPF commands for if we almost always use DelegateCommands?

如果几乎在每种情况下都使用 DelegateCommand,为什么 WPF 命令存在,它的唯一功能是从 ViewModel 执行方法,而不是 WPF 直接支持绑定到方法?

有一些现有的、已经实现的 WPF 命令可以执行某些任务,还有一些自定义命令,您可以使用 ICommand 接口实现这些命令以执行您的特定任务。

显然,Microsoft 仅针对每个人常用的任务创建了一组基本命令,并提供了界面,以便您可以创建自己的命令。

我注意到许多开发人员不知道可用的现有命令并实现自己的命令,基本上执行相同的功能(例如copy/paste/etc)。

现有命令集中有ApplicationCommands、NavigationCommands、MediaCommands、EditingCommands、ComponentCommands等

在这里您可以找到关于 'Commanding' 系统的详尽解释:

https://msdn.microsoft.com/en-us/library/ms752308(v=vs.110).aspx