什么时候应该使用Command
,什么时候应该使用Click
事件?
例如,如果我在我的UWP应用程序中有一个Button
,我应该使用哪个?
什么时候应该使用Command
,什么时候应该使用Click
事件?
例如,如果我在我的UWP应用程序中有一个Button
,我应该使用哪个?
Command
实现 ICommand
接口,这意味着需要添加更多代码到应用程序,但通常情况下不会改变。相反,事件处理程序不需要任何接口实现。CanExecute
逻辑的代码,以指示何时可以执行该命令。这在简单的事件处理程序(如 MyButton_Click)中不是必需的。这意味着使用 Command
,您将对 UI 元素有更多控制权(如果 CanExecute
是 false
,则按钮不会执行任何操作)。Command
时,您将把它绑定到您的 DataContext(如果您实现了 MVVM 模式,则为 ViewModel)。相反,当您添加一个简单的事件处理程序(如 MyButton_Click)时,代码将被放置在您的代码后台,即您主窗口的逻辑。在我看来,这是最好的方式,因为您只需要在一个地方(ViewModel)进行修改所需的所有内容,而不是在项目中随处散布的逻辑。说到底,你最好使用适合自己的东西,考虑到你收到的要求(例如:“不要使用事件处理程序”或“命令太高级了,我们只使用简单的东西”等),以及/或者项目中的其他限制。