У меня есть combobox, связанный с столбцом данных, подобным этому:
ComboBox.DataContext = DataDataTable;
ComboBox.DisplayMemberPath = DataDataTable.Columns["IDNr"].ToString();
IDNr в столбце всегда начинается с 4 букв, сопровождаемых идентификационным номером (например, BLXF1234). Мне нужно отобразить элементы в Combobox без букв (мне нужно отобразить 1234 в выпадающем списке).
Итак, я написал конвертер:
class IDPrefixValueConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value != null)
{
string s = value.ToString();
if (s.Contains("BL"))
{
return s.Substring(4);
}
else
{
return s;
}
}
return "";
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotSupportedException();
}
Нет, как я могу сообщить combobox, чтобы использовать конвертер для отображения элементов? Я попробовал это в Xaml:
ItemsSource="{Binding}"
DisplayMemberPath="{Binding Converter={StaticResource IDPrefixValueConverter}}"
Но все еще не работает... какие-то идеи? Благодаря