【发布时间】:2014-06-26 15:51:57
【问题描述】:
我有一个非常简单的按钮绑定到一个命令
<Button Content="Add" Margin="10,10,10,0" Command="{Binding SaveCommand}" ></Button>
我的命令代码
public ICommand SaveCommand
{
get;
internal set;
}
private bool CanExecuteSaveCommand()
{
return DateTime.Now.Second % 2 == 0;
}
private void CreateSaveCommand()
{
SaveCommand = new DelegateCommand(param => this.SaveExecute(), param => CanExecuteSaveCommand());
}
public void SaveExecute()
{
PharmacyItem newItem = new PharmacyItem();
newItem.Name = ItemToAdd.Name;
newItem.IsleNumber = ItemToAdd.IsleNumber;
newItem.ExpDate = ItemToAdd.ExpDate;
PI.Add(newItem);
}
代码有效地阻止了基于 CanExecuteSaveCommand 运行的命令,但按钮永远不会被禁用,有没有办法实现这一点?
【问题讨论】:
-
你能展示你的实现DelegateCommand吗?还是您使用的是 MVVM 框架?
-
public DelegateCommand(Action
标签: wpf mvvm canexecute