2012-02-02 110 views

回答

3

到目前爲止您嘗試過什麼?

我會使用綁定到ButtonIsEnabled屬性。

<Button Click="Button_Click" IsEnabled="{Binding Path=CanBeClicked}" /> 
0

最好的辦法是財產CanClickButton控制的IsEnabled屬性綁定。這樣,當CanClickfalse,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> 
5

對於這一點,你可以只使用一個command代替(通過結合Button.CommandCommand),將禁用按鈕,如果CanExecutefalse(您可能需要使用CanExecuteChanged事件讓按鈕知道的改爲CanExecute)。

+0

+1,這是我最好的答案。 – Bolu 2012-02-02 17:02:15

相關問題