public virtual bool DoDeactivate()
{
var messageBoxResult = GetSaveResult();
if(messageBoxResult == MessageBoxResult.Cancel || messageBoxResult == MessageBoxResult.None)
{
return false;
}
if(messageBoxResult == MessageBoxResult.Yes)
{
return SaveSettings();
}
if(messageBoxResult == MessageBoxResult.No)
{
IsDirty = false;
ResetIsDirtyForChildren();
}
return true;
}