WPF DataTemplate绑定BUG:AmbiguousMatchException

时间:2009-12-29 07:20:36

标签: wpf templates exception styles

以下是DataTemplates:

<DataTemplate DataType="{x:Type data:Item}" x:Key="ItemTemplate">
    <Border/>
</DataTemplate>

<DataTemplate DataType="{x:Type data:StyleItem}" x:Key="StyleItemTemplate">
    <Border>
        <ContentControl Content="{Binding Item}" 
                ContentTemplate="{StaticResource ItemTemplate}"/>
    </Border>
</DataTemplate>

我正在尝试将List<StyleItem>绑定到ItemsControl,
设置ItemTemplate="{StaticResource StyleItemTemplate}",但后来我得到System.Reflection.AmbiguousMatchException

我读了this帖子,而且StyleItem和Item类不是通用类,无论如何;在我的情况下,我不知道如何使用括号解决方案。

ItemStyleItem类是从System.Data.Objects.DataClasses.EntityObject继承并生成System.ComponentModel.IDataErrorInfo的EF实体。

2 个答案:

答案 0 :(得分:3)

这就像你的StyleItem.Item属性与IDataErrorInfo中定义的属性索引器之间的冲突一样。尝试将StyleItem.Item属性的名称更改为其他名称。

答案 1 :(得分:0)

您应该使用x:Key属性或DataType属性。

你不能同时使用两者。所以删除任何一个让它工作!我建议删除DataType属性,因为您已经在示例中使用了键!