private void UnregisterMarkerProvider(IMarkerProvider markerProvider) { markerProvider.MarkersRemoved -= MarkerProvider_MarkersRemoved; markerProvider.NewMarkers -= MarkerProvider_NewMarkers; markerProvider.RetrieveMarkersFailed -= MarkerProvider_RetrieveMarkersFailed; markerProvider.LogReady -= Plugin_LogReady; markerProvider.PluginLoadFailed -= Plugin_PluginLoadFailed; markerProvider.PluginLoaded -= MarkerProvider_PluginLoaded; markerProvider.StopRetrievingMarkers(); markerProvider.Unload(); }