private void SinHandler_Unloaded(object sender, RoutedEventArgs e) { SingleInputConverter sic = (SingleInputConverter)sender; string token = (string)sic.Input; if (!string.IsNullOrWhiteSpace(token) && handlers.ContainsKey(token)) { handlers.Remove(token); } }
private object SicHandler_ConvertRef(object sender, SingleInputsConvertEventArgs e) { SyncPairHandler handler; SingleInputConverter sic = (SingleInputConverter)sender; string oldToken = (string)e.OldValue; string newToken = (string)e.Input; if (!string.IsNullOrWhiteSpace(oldToken) && handlers.ContainsKey(oldToken)) { handlers.Remove(oldToken); } if (string.IsNullOrWhiteSpace(newToken)) { return(null); } handlers[newToken] = sic; return(BackgroundTaskHelper.Current.TryGetHandler(newToken, out handler) ? handler : null); }