protected override void OnDisappearing() { base.OnDisappearing(); NameCell.Dispose(); NotesCell.Dispose(); FolderCell.Dispose(); switch (_type) { case CipherType.Login: LoginTotpCell.Dispose(); LoginPasswordCell.Dispose(); LoginUsernameCell.Dispose(); LoginUriCell.Dispose(); LoginPasswordCell.Button.Clicked -= PasswordButton_Clicked; LoginGenerateCell.Tapped -= GenerateCell_Tapped; if (LoginTotpCell?.Button != null) { LoginTotpCell.Button.Clicked -= TotpButton_Clicked; } break; case CipherType.Card: CardBrandCell.Dispose(); CardCodeCell.Dispose(); CardExpMonthCell.Dispose(); CardExpYearCell.Dispose(); CardNameCell.Dispose(); CardNumberCell.Dispose(); break; case CipherType.Identity: IdTitleCell.Dispose(); IdFirstNameCell.Dispose(); IdMiddleNameCell.Dispose(); IdLastNameCell.Dispose(); IdUsernameCell.Dispose(); IdCompanyCell.Dispose(); IdSsnCell.Dispose(); IdPassportNumberCell.Dispose(); IdLicenseNumberCell.Dispose(); IdEmailCell.Dispose(); IdPhoneCell.Dispose(); IdAddress1Cell.Dispose(); IdAddress2Cell.Dispose(); IdAddress3Cell.Dispose(); IdCityCell.Dispose(); IdStateCell.Dispose(); IdPostalCodeCell.Dispose(); IdCountryCell.Dispose(); break; default: break; } }
protected override void OnDisappearing() { base.OnDisappearing(); NameCell?.Dispose(); NotesCell?.Dispose(); FolderCell?.Dispose(); if (AttachmentsCell != null) { AttachmentsCell.Tapped -= AttachmentsCell_Tapped; } if (DeleteCell != null) { DeleteCell.Tapped -= DeleteCell_Tapped; } if (AddFieldCell != null) { AddFieldCell.Tapped -= AddFieldCell_Tapped; } if (AddUriCell != null) { AddUriCell.Tapped -= AddUriCell_Tapped; } switch (Cipher.Type) { case CipherType.Login: LoginTotpCell?.Dispose(); LoginPasswordCell?.Dispose(); LoginUsernameCell?.Dispose(); if (LoginPasswordCell?.Button1 != null) { LoginPasswordCell.Button1.Clicked -= PasswordButton_Clicked; } if (LoginPasswordCell?.Button2 != null) { LoginPasswordCell.Button2.Clicked -= PasswordButton2_Clicked; } if (LoginTotpCell?.Button1 != null) { LoginTotpCell.Button1.Clicked -= TotpButton_Clicked; } break; case CipherType.Card: CardBrandCell?.Dispose(); CardCodeCell?.Dispose(); CardExpMonthCell?.Dispose(); CardExpYearCell?.Dispose(); CardNameCell?.Dispose(); CardNumberCell?.Dispose(); if (CardCodeCell?.Button1 != null) { CardCodeCell.Button1.Clicked -= CardCodeButton_Clicked; } break; case CipherType.Identity: IdTitleCell?.Dispose(); IdFirstNameCell?.Dispose(); IdMiddleNameCell?.Dispose(); IdLastNameCell?.Dispose(); IdUsernameCell?.Dispose(); IdCompanyCell?.Dispose(); IdSsnCell?.Dispose(); IdPassportNumberCell?.Dispose(); IdLicenseNumberCell?.Dispose(); IdEmailCell?.Dispose(); IdPhoneCell?.Dispose(); IdAddress1Cell?.Dispose(); IdAddress2Cell?.Dispose(); IdAddress3Cell?.Dispose(); IdCityCell?.Dispose(); IdStateCell?.Dispose(); IdPostalCodeCell?.Dispose(); IdCountryCell?.Dispose(); break; default: break; } Helpers.DisposeSectionEvents(FieldsSection); Helpers.DisposeSectionEvents(UrisSection); }