private void PropertyPage_Save(object sender, ResultEventArgs <bool> e) { if (this.generalPropPage.IsValid() == false || this.accountsPropPage.IsValid() == false) { MsgBoxUtil.Show(this.generalPropPage.ParentSheet, "Some information is missing or incorrect. Please review and correct the information entered on each page."); e.Result = false; } else { if (this.generalPropPage.IsDirty() == true || this.accountsPropPage.IsDirty() == true) { // load app info from SSO this.appInfo = SSOManager.GetApplicationInfo(this.appInfo.Name); // update it with new information from property pages this.generalPropPage.Update(this.appInfo); this.accountsPropPage.Update(this.appInfo); // save changes into SSO SSOManager.UpdateApplicationInfo(this.appInfo); // notify subscribers the application has been saved this.OnSaved(EventArgs.Empty); } e.Result = true; } }