我有Button
...
<Button Click="Button_Click" />
我想以某种方式绑定CanClick
布尔值。当CanClick
为false
时,Click
事件不应触发......
如何做到这一点?
答案 0 :(得分:5)
为此,您只需使用command(通过将Button.Command
绑定到Command
),如果CanExecute
为false
,则会停用该按钮(您可能需要使用CanExecuteChanged
事件让按钮知道对CanExecute
的更改。
答案 1 :(得分:3)
到目前为止你尝试了什么?
我使用绑定到Button
的{{1}}属性。
IsEnabled
答案 2 :(得分:0)
最好的方法是将属性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>