2016-04-12 3 views
0

Я хочу передать объект в качестве параметра в конвертер. Поскольку я не могу сделать это с помощью ConverterParameter, вместо этого я использовал DependencyProperty.WPF привязка к ошибке DependencyObject

Вот код -

public class FilteredColumnConverter : DependencyObject, IValueConverter 
{ 
    public DataGridFilter FilterObject 
    { 
     get { return (DataGridFilter) GetValue(FilterObjProperty); } 
     set { SetValue(FilterObjProperty, value); } 
    } 

    public static readonly DependencyProperty FilterObjProperty = 
    DependencyProperty.Register("FilterObj", 
    typeof(DataGridFilter), 
    typeof(FilteredColumnConverter), 
    new PropertyMetadata(null)); 

    // With implementations for Convert and ConvertBack 
} 

Мой XAML:

<UserControl.Resources> 
    <helpers:FilteredColumnConverter x:Key="filteredColumnConverter" 
       FilterObject="{Binding myFilterObj}"/> 
</UserControl.Resources> 

Я получаю следующее сообщение об ошибке:

Binding не может быть установлен на FilterObject свойство типа FilteredColumnConverter. Связывание может быть установлено только в DependencyProperty объекта DependencyObject.

В чем проблема? У меня есть FilterObject - свойство зависимостей, и я также соблюдал соглашения об именах.

+3

'FilterObj' должен быть' FilterObject'. , – Gopichandar

ответ

1

попробуйте зарегистрировать DP с именем FilterObject не FilterObj

DependencyProperty.Register("FilterObject", ... 
Смежные вопросы