protected override void OnDetaching(EventArgs e) { base.OnDetaching(e); if (First is SingleInharitanceType) ((SingleInharitanceType) First).Base = null; else if (First is InterfaceType) ((InterfaceType) First).RemoveBase(Second as InterfaceType); }