public void Execute()
{
if (notify.ShowYesNo(
Program.LanguageManager.GetString(StringResources.Joint_DeactivationQuestion),
Program.LanguageManager.GetString(StringResources.Joint_DeactivationQuestionHeader)))
{
try
{
viewModel.JointDisconnection();
viewModel.JointIsActive = false;
viewModel.ModifiableView.IsModified = true;
viewModel.ModifiableView.UpdateState();
notify.ShowSuccess(
string.Concat(Program.LanguageManager.GetString(
StringResources.Joint_Deactivated), viewModel.Number),
Program.LanguageManager.GetString(
StringResources.Joint_DeactivatedHeader));
log.Info(string.Format("The Joint #{0}, id:{1} has been deactivated.",
viewModel.Joint.Number, viewModel.Joint.Id));
}
catch (RepositoryException ex)
{
log.Error(ex.Message);
notify.ShowFailure(ex.InnerException.Message, ex.Message);
}
}
else
{
//Refresh property so that binded control become unchecked
viewModel.JointIsActive = false;
viewModel.JointIsActive = true;
}
RefreshVisualStateEvent();
}