using System.Globalization; using System.Windows.Data; namespace ShrlAlgo.Toolkit.Mvvm.Converters; public class RenameConverter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { var modifyFamilyName = values[0].ToString(); var familyName = values[1].ToString(); var symbolName = values[2].ToString(); string searchText = values[3] as string; string mapString = string.Empty; if (string.IsNullOrEmpty(searchText)) { return true; } switch (modifyFamilyName) { case "0": if (string.IsNullOrEmpty(familyName)) { return false; } mapString = familyName; break; case "1": if (string.IsNullOrEmpty(symbolName)) { return false; } mapString = symbolName; break; } return mapString.IndexOf(searchText, StringComparison.OrdinalIgnoreCase) >= 0; } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new NotImplementedException(); } }