2025-02-10 20:53:40 +08:00
|
|
|
|
using System.Globalization;
|
2024-09-22 11:05:41 +08:00
|
|
|
|
using System.Windows.Data;
|
|
|
|
|
|
|
2025-02-10 20:53:40 +08:00
|
|
|
|
namespace ShrlAlgo.Toolkit.Mvvm.Converters;
|
2024-09-22 11:05:41 +08:00
|
|
|
|
|
|
|
|
|
|
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();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|