Я только что сделал свой первый конвертер для преобразования из int в строку. У меня есть поле со списком, заполненное целыми числами (годами), но если значение равно 0, я хочу, чтобы в поле со списком было показано «Все».
Это мой конвертер:
public class IntToString : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value != null)
{
int intY = (int)value;
if (intY == 0)
{
String strY = "All";
return strY;
}
else
{
return intY.ToString();
}
}
return String.Empty;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
}
}
В XAML где мне установить конвертер? Я попытался в ItemsSource комбинированного списка:
ItemsSource="{Binding YearsCollection, Converter={StaticResource intToStringYearConverter}}"
Но я всегда получаю InvalidcastException
в этой строке:
int intY = (int)value;