Кто-нибудь знает, возможно ли связывание данных в классе на основе IValueConverter?
У меня есть следующий конвертер:
[ValueConversion(typeof(int), typeof(Article))]
public class LookupArticleConverter : FrameworkElement, IValueConverter {
public static readonly DependencyProperty ArticlesProperty = DependencyProperty.Register("Articles", typeof(IEnumerable<Article>), typeof(LookupArticleConverter));
public IEnumerable<Article> Articles
{
get { return (IEnumerable<Article>)GetValue(ArticlesProperty); }
set { SetValue(ArticlesProperty, value); }
}
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
...
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
...
}
}
Его цель - найти статью в списке по ее идентификатору и вернуть эту статью.
Однако я хотел бы заполнить свойство Articles, привязав к нему коллекцию, например:
<local:LookupArticleConverter Articles="{Binding Articles}" x:Key="LookupArticle"/>
Но, похоже, это не работает. Метод установки никогда не вызывается. Свойство source содержит фактическую непустую коллекцию, так что это не проблема.
Также нет сообщений об ошибках связывания в выходном журнале.
Есть какие-нибудь подсказки?