如何绑定布尔值来切换按钮';s单击事件
本文关键字:按钮 事件 单击 何绑定 绑定 布尔值 | 更新日期: 2023-09-27 18:22:11
我有一个Button
。。。
<Button Click="Button_Click" />
我想以某种方式将CanClick
布尔值绑定到它。当CanClick
为false
时,Click
事件不应激发。。。
如何做到这一点?
为此,您只需使用一个命令(通过将Button.Command
绑定到Command
),如果CanExecute
是false
,它将禁用按钮(您可能需要使用CanExecuteChanged
事件使按钮知道CanExecute
的更改)。
到目前为止你尝试了什么?
我会使用绑定到Button
的IsEnabled
属性。
<Button Click="Button_Click" IsEnabled="{Binding Path=CanBeClicked}" />
最好的方法是将属性CanClick
绑定到Button
控件的IsEnabled
属性。这样,当CanClick
是false
时,IsEnabled
也将是false
。禁用的按钮不会触发Click
事件。
// ... UserControl code-behind ...
private bool mCanClick = false;
public bool CanClick
{
get { return mCanClick; }
}
// ... UserControl XAML ...
<UserControl ... DataContext="{Binding RelativeSource={RelativeSource Self}}">
...
<Button CanClick="{Binding CanClick}" Click="Button_Click" />
...
</UserControl>