【发布时间】:2016-08-02 15:43:29
【问题描述】:
我想将一个对象作为参数传递给转换器。因为我不能使用 ConverterParameter 来做到这一点,所以我使用了 DependencyProperty。
这里是代码 -
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>
我收到以下错误:
无法在 FilteredColumnConverter 类型的 FilterObject 属性上设置绑定。 Binding 只能在 DependencyObject 的 DependencyProperty 上设置。
似乎是什么问题?我有一个 FilterObject 是一个依赖属性,我也遵循了命名约定。
【问题讨论】:
-
FilterObj应该是FilterObject。 .
标签: c# wpf dependency-properties