WPF启用并禁用Button

时间:2015-02-18 12:50:32

标签: c# wpf mvvm binding wpf-controls

我正在使用MVVM模式

执行代码

我有两个按钮添加和删除

当我点击添加按钮时,它会添加绑定到某个属性的信息列表。

如果列表中有任何信息,我只想启用删除按钮

例如

当我点击添加按钮时,它会创建一个列表

人员名单
 1.拉姆  萨姆  大坝

当我点击“删除”按钮时,它将逐个删除每个项目,当一切都被删除时,该按钮将再次被禁用

期望 -

我只想要删除删除按钮,直到列表中没有任何内容被删除

每当在列表中添加Something时,按钮应该变为Enabled。

2 个答案:

答案 0 :(得分:0)

我不确定你真正想要做什么,但是我理解的是:

您有一个列表,单击添加按钮后会添加项目。 我假设这发生在Button_Click事件中。这是您启用/显示按钮的地方:

RemoveButton.Visibility = Visibilty.Visible;
RemoveButton.IsEnabled = true;

然后在删除按钮的clickevent中,您可以遍历列表并删除所有项目。在循环结束时,您可以再次禁用删除按钮。

我希望这就是你要找的东西。

答案 1 :(得分:0)

public ICommand AddCommand
    {
        get;
        internal set;
    }

    private void CreateAddCommand()
    {
        CancelCommand = new RelayCommand(ExecuteCancel, CanExecuteCancelCommand);
    }

    private void ExecuteAdd(object obj)
    {
       //Here is Your code
    }

    private bool CanExecuteAddCommand(object obj)
    {
        return true;//return the value based on conditions here is button enable or desabled condition.
    }

在构造函数中调用CreateAddCommand();

和xaml代码一样

<Button Content="Add" Command="{Binding AddCommand}" HorizontalAlignment="Left"  VerticalAlignment="Top" Width="90" Background="#FFF38181" BorderBrush="{x:Null}" Foreground="White" Height="30"/>