using System; using System.Globalization; using System.Windows.Data; namespace MultiTerm.Wpf.ValueConverters; public class IntToStringConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { // guard type if(value is not int integerVal) { throw new ArgumentException("Can only convert from integer value"); } return integerVal.ToString(); } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { // guard type if (value is not string stringVal) { throw new ArgumentException("Can only convert from string value"); } // try parsing to int int parsedVal; if(int.TryParse(stringVal, out parsedVal) == false) { // error parsedVal = -1; } return parsedVal; } }