我有一个WPF 应用程序,它显示了一个绑定到如下命令的按钮:
<Button Command="{Binding Path=TestrunStartCommand}" Content="GO!">
该命令的定义如下:
public ICommand TestrunStartCommand
{
get { return new RelayCommand(TestrunStartExecute, () => !IsTestrunInProgress); }
}
public bool IsTestrunInProgress
{
get{
return _isTestrunInProgress;
}
set{
_isTestrunInProgress = value;
RaisePropertyChanged(IsTestrunInProgressPropertyName);
}
}
IsTestrunInProgress
问题是,在我设置为 false后,该按钮不会立即启用,但只有在我单击 application window 后才会启用。
你能帮我理解这种行为并告诉我如何解决这个问题吗?
进一步阅读: wpf 命令模式 - 什么时候查询可以执行