如何绑定 Can Execute
控件是否处于启用状态,可以响应用户交互并触发操作,是用户体验设计(UX)中“功能可见性”部分的重要原则。通过禁用无法运行的命令,可以增强用户的信心。例如,如果按钮或菜单项由于应用程序的当前状态而无法运行,则应呈现为不活动状态。
本示例假设您正在使用带有 ReactiveUI 框架的 MVVM 实现模式。这种(推荐的)方法在视图和视图模型之间提供了非常清晰的分离。
在此示例中,只有在消息不为空时,才能单击按钮。一旦输出显示出来,消息就会重置为空字符串,从而再次禁用按钮。
XAML
<StackPanel Margin="20">
<TextBox Margin="0 5" Text="{Binding Message}"
Watermark="Add a message to enable the button"/>
<Button Command="{Binding ExampleCommand}">
Run the example
</Button>
<TextBlock Margin="0 5" Text="{Binding Output}" />
</StackPanel>