简体   繁体   English

WPF的DependencyObject绑定错误

[英]WPF Binding on DependencyObject error

I want to pass an object as a parameter to a Converter. 我想将一个对象作为参数传递给Converter。 Since I can't do that using a ConverterParameter, I have used a DependencyProperty instead. 由于无法使用ConverterParameter做到这一点,因此我改用了DependencyProperty。

Here is the code - 这是代码-

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
}

My XAML: 我的XAML:

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

I'm getting the following error : 我收到以下错误:

A Binding cannot be set on the FilterObject property of type FilteredColumnConverter . 不能在FilteredColumnConverter类型的FilterObject属性上设置绑定。 A Binding can only be set on a DependencyProperty of a DependencyObject. 绑定只能在DependencyObject的DependencyProperty上设置。

What seems to be the problem? 似乎是什么问题? I have a FilterObject is a dependency property and I have followed the naming conventions as well. 我有一个FilterObject是一个依赖项属性,我也遵循了命名约定。

尝试使用名称FilterObject而不是FilterObj注册DP

DependencyProperty.Register("FilterObject", ...

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM